我想从excel文件中读取数据,并希望将其存储在数据表中。以前我使用的是 interop * excel *。但它会多次给COM异常。所以我想切换到 OPENXML 。但是我无法读取其中的xls文件。它显示 损坏的数据异常 .Any 1有示例代码来修复它。 哪个更好读取excel文件?
是否可以通过任何方式停止 COM异常?
哪个最好是oledb vs excel interop vs open xml?
我不想要任何格式化。想要从excel文件读取数据到datatable。 Excel工作表可以包含日文,中文字母等外来字符。
提前致谢
答案 0 :(得分:0)
我面临同样的问题。 OPEN XML适用于XLSX格式,但无法读取XLS文件。 根本原因是XLS文件格式实际上保存为BINARAY FILE FORMAT。它不支持XML格式化。更高版本支持XML格式化,因此它可以工作。
对于Work arround而言,使用OPEN XML,我们可以进行OLEDB连接,以读取XLS文件格式。 XLSX只能被64位版本读取 - MS Access数据库引擎2010 64位Redistrubtion 但它无法读取XLS格式。 我们无法同时安装32位和64位引擎在一起。
可以使用Excel Interop服务(.dll)但MS Office附带,服务器上不建议安装MS Office。