一、在客戶端把資料匯入到
excel
檔案步驟 1
、建立物件,開啟或生成
excel檔案
//服務端建立
stringbuilder物件
system.text.stringbuilder sb=new system .text .stringbuilder (); //
指定客戶端執行語言
//建立物件
//開啟excel檔案
2、選定工作表,把資料匯入到
excel //
選定欲操作的
excel表
//獲得要運算元據表的行、列數
int rows=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(mno char(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
的設定
刪除以下專案
或者這樣設定
三、兩種方法的優缺點
操作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.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 指定客戶端執行...
C 在客戶端和服務端操作Excel檔案
一 在客戶端把資料匯入到 excel 檔案步驟 1 建立物件,開啟或生成 excel檔案 服務端建立 stringbuilder物件 system.text.stringbuilder sb new system text stringbuilder 指定客戶端執行語言 建立物件 開啟excel檔案...