如何使用Apache POI将.XLS转换为.HTML文件?
我试图使用该示例将HSSFWorkbook转换为.HTML文件,但该示例不起作用,因为我使用的Maven依赖项根本不包含openxml4j类。 为什么这个……在任何地方都没有解释?
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.10-beta2</version> </dependency>
以下是来自ToHtml.java的代码片段,它无法定位类:
public static ToHtml create(InputStream in, Appendable output) throws IOException { try { Workbook wb = WorkbookFactory.create(in); return create(wb, output); } catch ( InvalidFormatException e){ throw new IllegalArgumentException("Cannot create workbook from stream", e); } }
基本上,没有findClasses WorkbookFactory和InvalidFormatException 。 我将如何解决这个问题? 我不知道那个平等的工厂会在我正在使用的标准POI中。 有没有无证的弃用或什么?
POI组件的所有不同组件的完整列表及其依赖项和Maven工件标识在Apache POI组件页面中给出 。
如果你想同时使用HSSF和XSSF( WorkbookFactory
允许),你需要依赖poi-ooxml
而不仅仅是poi
。
把你的maven依赖关系切换到poi-ooxml
,它将poi-ooxml
所有必需的部分(包括直poi
jar),然后你的示例代码将工作
也就是说,你可能也想看看Apache Tika ,它提供了支持(build立在POI等上),把大量的文档转换成HTML(+检测types,获取元数据等)