一、
在客戶端把資料匯入到
excel
檔案步驟
1、建立
物件,開啟或生成
excel
檔案//
服務端建立
stringbuilder
物件system.text.stringbuilder sb=new system .text .stringbuilder ();
//指定客戶端執行語言
//建立
物件//
開啟excel
檔案c:\\myexcel.xls
)\r\n");
2、選定工作表,把資料匯入到
excel
//選定欲操作的
excel表//
獲得要運算元據表的行、列數
introws=dt.rows.count,cols=dt.columns.count ;
//按行列將資料寫入
excel
表for
(int j=brow+1;j
for (int i=bcol;i
3、顯示
excel檔案4
、釋放建立的物件5
、將程式碼寫到客戶端
this
.page.registerclientscriptblock("",sb.tostring ());
二、在服務端
操作excel
檔案服務端操作
excel
檔案,是把
excel
檔案看作資料庫,把
excel
工作表當作資料表
1、建立連線並開啟連線
protected
system.data .oledb.oledbconnection dbcnn;
cnnstr="provider=microsoft.jet.oledb.4.0;extended properties=\"excel 8.0;hdr=yes;\";data source=
c:\\myexcel.xls」;
dbcnn=new oledbconnection (cnnstr);
dbcnn.open ();
2、建立
oledbcommand
物件用來操作
excel
檔案protected
system.data .oledb .oledbcommand dbcmd;
dbcmd=new oledbcommand();
dbcmd.connection =dbcnn;
3、操作
excel
檔案//
獲得要運算元據表的行、列數
rows=dt.rows.count ;
cols=dt.columns.count-1 ;
//按行列將資料寫入
excel
檔案sheet1
工作表for
(int i=0;i
4、釋放
oledbcommand
物件、關閉連線
dbcmd.dispose ();
dbcnn.close ();
5、可操作的
sql語句
//建立名為
punchdate
的工作表,並指明子段型別。
//建立工作表好處是可指定子段型別,否則都以字串匯出
create table punchdate(
mnochar(5),
punchnum
float
) //
插入新資料
insert into punchdate(mno,punchnum) values(『09
』,9000)
//更新資料
update punchdate set punchnum=8000 where mno=』09
』 6、不可操作的
sql語句
delete from punchdate
7、注意連線子串
//hdr=yes
說明工作表第一行為子段名
"provider=microsoft.jet.oledb.4.0;extended properties=\"excel 8.0;
hdr=yes
;\";data source=
c:\\myexcel.xls」
//hdr=no
說明工作表沒有含子段名的行
"provider=microsoft.jet.oledb.4.0;extended properties=\"excel 8.0;
hdr=
no;\";data source=
c:\\myexcel.xls」
8、注意對
web.config
的設定刪除以下專案
或者這樣設定
false
" />
三、兩種方法的優缺點 操作
excel
檔案方法
優點缺點
客戶端資料匯入到
excel
檔案時,很靈活,可將資料填入任意指定的儲存格,定位到任意位置
1、在客戶端生成
activex
控制項,要將站點設定成可信站點或對
ie進行安全設定(降低了
ie的安全性)
2、對呼叫的
excel
模板檔案,使用者要有權讀寫
3、在客戶端寫
excel
檔案速度比較慢
服務端1、
對呼叫的
excel
模板檔案,只要
asp.net
有權讀寫即可
2、在服務端寫
excel
檔案速度比較快
3、不要對
ie進行特別設定
對操作的檔案只能當作資料庫操作,不夠靈活 四、
流輸出原理
:把資料填充到
datagrid
,然後把
datagrid
內容放到乙個輸出流裡面
,並指定輸出流型別為
excel
system.io .stringwriter sw =new system.io.stringwriter();
//字串流
system.web .ui .htmltextwriter hw =new system.web.ui.htmltextwriter(sw);
//html流,
用字串流作引數
dg.rendercontrol(hw);//把
datagrid
流變成字串流。 //
定義輸出流型別為
excel
流。關鍵語句。
response.contentencoding=system.text.encoding.getencoding("big5");
//指定編碼型別為大五碼
response.write(sw.tostring());
//輸出流
response.end();
//結束
C 在客戶端和服務端操作Excel檔案
一 在客戶端把資料匯入到 excel 檔案步驟 1 建立物件,開啟或生成 excel檔案 服務端建立 stringbuilder物件 system.text.stringbuilder sb new system text stringbuilder 指定客戶端執行語言 建立物件 開啟excel檔案...
C 在客戶端和服務端操作Excel檔案
一 在客戶端把資料匯入到 excel 檔案步驟 1 建立物件,開啟或生成 excel檔案 服務端建立 stringbuilder物件 system.text.stringbuildersb new system text stringbuilder 指定客戶端執行語言 建立物件 開啟excel檔案 ...
C 在客戶端和服務端操作Excel檔案
2008 01 03 07 20 一 在客戶端把資料匯入到 excel 檔案步驟 1 建立物件,開啟或生成 excel檔案 服務端建立 stringbuilder物件 system.text.stringbuilder sb new system text stringbuilder 指定客戶端執行...