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

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


当前回答

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

其他回答

如果只是包含在Excel文件中的简单数据,则可以通过ADO.NET读取数据。请看下面列出的连接字符串:

http://www.connectionstrings.com/?carrier=excel2007 或 http://www.connectionstrings.com/?carrier=excel

更新:然后你可以读取工作表通过选择*从[Sheet1$]

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

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

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

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

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

Excel数据阅读器是去的方式!

它是开源的,在http://exceldatareader.codeplex.com/上,正在积极开发。

我们使用它来阅读表格(有时不是那么表格)工作表已经有几年了(在一个金融应用程序中)。

可以从人类可读的表中读取单元测试数据。

只需避免尝试返回DateTime的功能,因为对于Excel, DateTime只是双位数。

不是免费的,但是在最新的Office中有一个非常好的自动化。net API。(有一个API已经有很长一段时间了,但是讨厌的COM)你可以在代码中做任何你想要/需要的事情,而Office应用程序仍然是隐藏的后台进程。

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