从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。 这应该很容易查询您正在查找的信息。 一旦拥有了,插入数据库应该很容易。

http://code.google.com/p/linqtoexcel/

从Excel工作表中读取数据在C#? 我在这里得到了精确的解决scheme,请访问http://microsoftdotnetsolutions.blogspot.in/2012/12/get-excel-sheet-data.html