从Excel工作表中读取数据在C#?
我需要一些方法来从Excel文件中读取工作表,然后select它的重要性,并将所有数据放在数据库中。
这只是一个工作而已。 这是一个带有信息的旧的excel文件,必须传递给数据库,并且与我开发的应用程序一起工作。
我看到很多例子,但是我不太清楚它是如何工作的,哪种方式最适合做这种types的工作。
我的想法是在这个过程中开发一些在C#中的应用程序。
LINQ可能会工作,并会比较简单的表格更好。 传统的方法是使用COM Interop。 这里有一个微软的页面,使用COM interop来处理Excel(这是为了创build电子表格,但原理是一样的 – 只需使用不同的API方法来打开和读取数据):
http://msdn.microsoft.com/en-us/library/ms173186(v=vs.80).aspx
我以前用过这个,效果很好。 http://exceldatareader.codeplex.com/
有一个方便的例子…
using (FileStream fileStream = File.Open(inputFilenames[0], FileMode.Open, FileAccess.Read)) { IExcelDataReader excelReader; if (Path.GetExtension(inputFilenames[0]) == ".xls") excelReader = Factory.CreateReader(fileStream, ExcelFileType.Binary); else excelReader = Factory.CreateReader(fileStream, ExcelFileType.OpenXml); excelReader.NextResult(); while (excelReader.Name != this.Worksheet) excelReader.NextResult(); while (excelReader.Read()) { if (FirstRowHasColumnNames) { FirstRowHasColumnNames = false; } else { //do stuff var test = GetColumnData(excelReader, 1); } } this.Save(outputFilename); }
我强烈build议使用linq提供程序来连接到excel。 这应该很容易查询您正在查找的信息。 一旦拥有了,插入数据库应该很容易。
从Excel工作表中读取数据在C#? 我在这里得到了精确的解决scheme,请访问http://microsoftdotnetsolutions.blogspot.in/2012/12/get-excel-sheet-data.html
- 在使用EPPlus Excel Library时分配的内存很大
- 如何在ExcelSheet的特定位置添加文本框?
- 如何更改标题背景的颜色
- 对整行进行条件格式化
- 导入Excel工作表到SQL Server获取错误“OLE DB提供程序”Microsoft.ACE.OLEDB.12.0“为链接的服务器”(空)“”
- 图表的SetSourceData返回HRESULT E_FAIL数据透视表(Excel C#)
- 我可以编译一个C#WPF程序中的Excel文件,并在代码中使用它?
- 把这条线放入excel.Formula“= IF(C4 =”x“; 1; 0)”因为双“`”
- 从HRESULT:0x800A03ECexception,同时用interop打开文件时,错误消息Excel无法使用可用的资源继续执行此任务