簡體   English   中英

如何在C#中使用ODBC讀取特定Excel工作表中的所有數據行到ADO.NET數據表中

[英]How to read all data rows in a specific Excel sheet into an ADO.NET Datatable with out using ODBC in C#

使用C#從特定Excel工作簿表讀取ADO.NET DataTable的所有數據行的最快方法是什么。 Excel工作簿大約為30MB。

我不想使用ODBC,因為我將在服務器計算機上安裝它時遇到問題。

我的偏好是使用StreamReader類的解決方案,但是除了使用ODBC之外,任何不使用StreamReader的解決方案都是受歡迎的。

如果服務器上安裝了ms office,最快的方法是將Excel工作表導出為CSV文件,然后使用文件IO將其導入數據庫。

您可以通過COM Interop打開excel並將工作簿導出為CSV。 stackoverflow上的其他人討論了這個過程: 將一個excel文件保存到C#代碼中的csv文件中

我已經獲得了通過com interop直接從excel獲取數據的經驗非常慢。 excel非常快速地輸出csv。

[編輯]一個非常好的辦公包裝是NetOffice。 它的工作方式類似於COM Interop界面,但速度更快,功能更多: http//netoffice.codeplex.com/

如你更喜歡流閱讀器,在codeplex上也有一個excel二進制閱讀器: http//exceldatareader.codeplex.com/ [/ edit]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM