【发布时间】:2014-02-07 08:13:53
【问题描述】:
我正在制作一个 java 应用程序,它需要从 Web 生成的 .xls 文件中读取值。
不幸的是,.xls 文件不是真正的 .xls 文件,它是一堆 html 标记,自动生成程序只是将其扩展名更改为 .xls。
为了读取自动生成文件中单元格的值,我打算使用 Apache-POI 库。但似乎该库仅从合法的 .xls 文件中读取。运行代码时出现以下错误
java.io.IOException: Invalid header signature; read 0x6D74683C0A0D0A0D, expected 0xE11AB1A1E011CFD0
at org.apache.poi.poifs.storage.HeaderBlock.<init>(HeaderBlock.java:140)
at org.apache.poi.poifs.storage.HeaderBlock.<init>(HeaderBlock.java:104)
at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:138)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:322)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:303)
at excel.ReadAccountName.main(ReadAccountName.java:17)
我正在考虑以下两种解决方案中的任何一种 -
是否可以仅在 Java 代码中将自动生成的 .xls 文件转换为 LEGIT .xls 格式?
我可以通过其他方式读取自动生成的 .xls 文件吗?
如果有其他可能的解决方案,请提出建议。
【问题讨论】:
标签: java html excel apache-poi