C 在客戶端和服務端操作Excel檔案

2021-04-13 12:34:59 字數 3514 閱讀 1790

一、

在客戶端把資料匯入到

excel

檔案步驟 1、

建立物件,開啟或生成

excel檔案

//服務端建立

stringbuilder物件

system.text.stringbuildersb=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 .stringwritersw =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檔案

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檔案...