打开文档文件时"The document is really a OOXML file"



当我尝试使用 apache poi 3.17 读取文档文件的内容时,我收到以下错误:

java.lang.IllegalArgumentException:该文档实际上是一个 OOXML 文件 at org.apache.poi.hwpf.HWPFDocumentCore.verifyAndBuildPOIFS(HWPFDocumentCore.java:123) at org.apache.poi.hwpf.HWPFDocument.(HWPFDocument.java:169) 在项目12。首页12.按钮1动作执行(首页12.java:312) 在项目12。首页12.访问$300(首页12.java:24) 在项目12。家12$3.动作执行(家12.java:113) at java.awt.Button.processActionEvent(Button.java:409) at java.awt.Button.processEvent(Button.java:377) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) 在java.awt.EventDispatchThread.run(EventDispatchThread.java:82)我已经

包含了xmlbeans-2.6.0.jardom4j-1.6.1.jar但问题仍然存在。

当您尝试读取.doc文件时,实际上它们是docx格式时,就会发生这种情况。

在这种情况下,请使用XWPFDocument类而不是HWPFDocument

干杯!:)

相关内容

最新更新