【发布时间】:2014-03-28 12:41:21
【问题描述】:
用户可以将 excel 文档保存为 .xls 或 xml-table。结果是一个具有固定结构的 xml 文件,Excel 可以正确使用它。
在java中可以用apache-poi打开这种类型的excel文件吗?
提前致谢,安德烈。
【问题讨论】:
-
你的尝试是什么?
-
我不知道该怎么做。
标签: java apache-poi
用户可以将 excel 文档保存为 .xls 或 xml-table。结果是一个具有固定结构的 xml 文件,Excel 可以正确使用它。
在java中可以用apache-poi打开这种类型的excel文件吗?
提前致谢,安德烈。
【问题讨论】:
标签: java apache-poi
如果您的意思是XML-table 是这样的文件(使用 Excel 中的 另存为 选项创建):
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
那么答案是:不,你不能用 Apache POI 打开这个。
POI 支持 Microsoft Excel 97(-2007) (BIFF8) .xls 和 Microsoft Excel XML (2007+) (OOXML) .xlsx 文件格式。
第一个是二进制格式,第二个是 ZIP 文件格式,里面有一堆 XML 文件。 (查看:将 .xlsx 文件重命名为 .zip 并使用 ZIP 工具打开)
我只知道一个 .NET/C# 工具能够将该 XML 模式转换为 Excel 格式,然后 POI 可以读取该格式:http://spreadsheet.codeplex.com/
也许还有其他的转换器,你可能用谷歌看看它。
【讨论】: