是否有免费或开源的库可以直接从c#程序中读取Excel文件(.xls) ?

它不需要太花哨,只需选择一个工作表并将数据作为字符串读取即可。到目前为止,我一直在使用Excel的Export to Unicode文本功能,并解析生成的(以制表符分隔的)文件,但我想消除手动步骤。


当前回答

Koogra是一个用c#编写的开源组件,可以读写Excel文件。

其他回答

SmartXLS是另一个excel电子表格组件,它支持excel图表、公式引擎的大部分功能,并且可以读写excel2007 openxml格式。

接受。io电子表格将为您做这个工作,并且不收费。看看这个。

虽然您特别要求使用.xls,这意味着使用较旧的文件格式,但对于OpenXML格式(例如xlsx),我强烈推荐使用OpenXML SDK (http://msdn.microsoft.com/en-us/library/bb448854.aspx)。

您可以编写一个excel电子表格,加载给定的excel电子表格并将其保存为CSV(而不是手动操作)。

然后你可以用c#自动化它。

一旦它在csv中,c#程序就可以理解它。

(此外,如果有人让你用excel编程,最好假装你不知道怎么做)

(编辑:啊,是的,rob和Ryan都是对的)

如果在同一个工作表中有多个表,可以给每个表一个对象名称,并使用OleDb方法读取表,如下所示:http://vbktech.wordpress.com/2011/05/10/c-net-reading-and-writing-to-multiple-tables-in-the-same-microsoft-excel-worksheet/