?平時需要把excel導入到oracle中,現總結方法如下:
?1、使用OLE方式:? ?
string ConnStr = " Provider=Microsoft.Jet.OleDb.4.0; " + " data source= " + 文件.xls+ " ;Extended Properties=Excel 8.0 " ; OleDbConnection conn = new OleDbConnection(ConnStr); conn.Open(); DataTable dt = new DataTable (); OleDbDataAdapter odda = new OleDbDataAdapter( " select * from [sheet1$] " , conn); odda.Fill(dt); return dt;
.....后續操作...
2、先把excel轉成txt文檔,在用流去讀取,代碼較多,只記錄具體步驟:
? ?(1)先啟動word進程將excel轉成txt,然后退出word,刪除excel文件
? ?(2)使用streamreader去讀取txt的每一行,然后用"\t"進行分割到每一列
? ? ? ?注:如果是很標準的word那么分割應該沒有問題,如果是人工的可能出現回車符,那么用系統自帶的streamreader去解析每一行,那么可能出現問題,這時候我自己的方法是自己判斷行數,然后得到該行的值
? ?(3)得到行號,列值,自己構建DataTable
? ?(4)后續入庫
?
? ? 這兩種方法從使用上感覺第一種更方便,如果是很標準的word那么第一種方便,快捷;第二種慢,但是適應性好,直接轉成文本文件保留了原格式,適用于人工自己構建的表
? ? 工作中暫時就用到這兩種方法,如果以后有新的在添加
? ?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
