C 讀取excl(相容office多種版本)

2022-03-24 16:49:03 字數 1939 閱讀 1011

要求:匯入excl引用了using system.data.oledb,需要安裝乙個office

相容原理:office匯入字串會因為版本改變,捕獲異常的方式進行切換

#region 讀取excel資料到dataset iqsir 2015-11-21

///

/// 讀取excel資料到dataset

///

/// excel帶路徑

/// 取第幾個表

/// 第一行是列名而不是資料

/// dataset

protected dataset readexcel(string filepath, int tabindex, string hdr)

';extended properties='excel 12.0;hdr=" + hdr + ";imex=1'";

string strconnection1 = "provider=microsoft.jet.oledb.4.0;data source='';extended properties='excel 8.0;hdr=" + hdr + ";imex=1'";

//備註: "hdr=yes;"是說excel檔案的第一行是列名而不是資料,"hdr=no;"正好與前面的相反。

// "imex=1 "如果列中的資料型別不一致,使用"imex=1"可必免資料型別衝突。

// 當 imex = 0 時為「匯出模式」,這個模式開啟的 excel 檔案只能用來做「寫入」用途。

//當 imex = 1 時為「匯入模式」,這個模式開啟的 excel 檔案只能用來做「讀取」用途。

//當 imex = 2 時為「鏈結模式」,這個模式開啟的 excel 檔案可同時支援「讀取」與「寫入」用途。

strconnection = string.format(strconnection, filepath);

string msgconst = "開啟excel連線字串錯誤,解決方法:1安裝offic2010+,2更改c/windows/temp資料夾許可權為everyone完全控制";

try);

//下面取得表名

string strtablename = schema.rows[tabindex]["table_name"].tostring();

strtablename = strtablename.substring(0, strtablename.indexof('$') + 1);

oledbdataadapter da = new oledbdataadapter("select * from [" + strtablename + "]", con);

ds = new dataset();

da.fill(ds);

da.dispose();

return ds;

}catch (exception exmsg1)

finally

}catch (exception ex)

);//下面取得表名

string strtablename2 = schema.rows[tabindex]["table_name"].tostring();

strtablename2 = strtablename2.substring(0, strtablename2.indexof('$') + 1);

oledbdataadapter da = new oledbdataadapter("select * from [" + strtablename2 + "]", con);

ds = new dataset();

da.fill(ds);

da.dispose();

return ds;

}catch (exception exmsg2)

finally

}catch (exception ex1)}}

#endregion

Java 讀取Excl檔案 (poi 3 13)

最近做專案遇到了讀取excel資料到資料庫做資料的初始化。於是找乙個。發現 poi 3.13 可以解決問題。可以解析兩種格式 xlsx和xls 以下是實現的步驟 2.學習api。接下來是還是demo來說明問題吧 1.準備excel檔案 2.專案的目錄結構 實戰 讀取excel資料 param fil...

如何解決MathType相容Office 2016

1從mathtype安裝路徑中找到 mathtype office support 64中的mathtype commands 6 for word 2013和wordcmds兩個檔案。此步驟要注意自己安裝的office2016版本是32位還是64位,32位使用者在mathtype office s...

解決MathType相容Office 2016

現在mathtype的使用者越來越多,使用它可以很方便地編輯公式,但是樓主發現mathtype與office 2016不能夠很好好相容,那麼怎樣能夠使 mathtype相容office 2016呢?解決方法如下 1 從mathtype安裝路徑中找到mathtype office support 64...