ASP.NET操作Excel注意事項(xiàng)淺析
ASP.NET操作EXCEL表格,需要注意以下事項(xiàng):
ASP.NET操作EXCEL1、添加oledb的引用
using System.Data.OleDb;
ASP.NET操作EXCEL2、獲取excel的路徑,根據(jù)采用的控件不同,這里會不一樣。在asp.net2003中,只能用HTML控件File Field 。獲取的路徑 excel_route=this.File1.PostedFile.FileName.ToString();
在asp.net2005中,由于有web控件FileUpload, 獲取的路徑
string excel_route = this.FileUpload1.PostedFile.FileName.ToString();
雖然都一樣,但是05還是比03好用。
ASP.NET操作EXCEL3、根據(jù)使用Excel版本的不用,在建立與excel的鏈接時(shí),需要采用不同的驅(qū)動器,目前以office2003為最常用office,驅(qū)動器類型是
string connStr = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = '" + excel_route + "';Extended Properties=Excel 8.0;";
ASP.NET操作EXCEL4、對Excel的操作,就像正確讀取數(shù)據(jù)庫表一樣,所不同的是,excel數(shù)據(jù)庫的表名就是工作薄的名稱,即sheet名稱。
string load_excel = "SELECT * FROM [" + sheet_name + "$]";
一般默認(rèn)情況下,工作薄名稱都是sheet1,但是有時(shí)候用戶會私自改名,所以***是讓用戶自己輸入sheet名稱。
ASP.NET操作EXCEL5、讀取excel表格時(shí),需要注意的是,有些excel是從程序?qū)С龅?,并且是使用Response的方式直接把html代碼輸出到Excel中的,這樣的excel表格在讀取時(shí)會提示
“外部表不是預(yù)期的格式”錯(cuò)誤,此時(shí)需要手工打開excel表格,然后重新保存即可。
ASP.NET操作EXCEL6、讀取后的excel數(shù)據(jù),和操作普通數(shù)據(jù)庫一樣
- DataSet ds = new DataSet();
- ds.Dispose();
- OleDbDataAdapter da = new OleDbDataAdapter(load_excel, connStr);
- da.Fill(ds);
這樣就把Excel數(shù)據(jù)讀入到了ds中,剩下的就可以隨意操作了。
ASP.NET操作Excel就向你介紹到這里,希望對你有所幫助。
【編輯推薦】