我尝试使用Apache POI
处理 docx 文件。只需简单地阅读然后写入文件(仅适用于现在)。这是我的简单代码:
FileInputStream fileInputStream = new FileInputStream(inputFile);
XWPFDocument document = new XWPFDocument(OPCPackage.open(fileInputStream));
FileOutputStream fileOutputStream = new FileOutputStream(outputFile);
document.write(fileOutputStream);
fileOutputStream.flush();
fileOutputStream.close();
fileInputStream.close();
问题是输入文件在标题中有小图像。因为在使用POI处理输入文件并在Microsoft Word中打开输出文件后,我得到了损坏的文件错误:
Microsoft Office cannot open this file because some parts are missing or invalid.
Location: Part: /word/settings.xml, Line: 2, Column: 0
一切都在OO Writer中有效,但不在办公室。
问题是:出了什么问题? apache POI不处理带有图像的文件吗?你知道如何解决这个问题吗?
我需要使用Apache POI
,我没有考虑其他工具。我也使用POI 3.8
答案 0 :(得分:0)
问题不在于图像标题,而在于Apache POI jar版本。使用最新的罐子。
poi-3.10-FINAL.jar
poi-ooxml-3.10-FINAL.jar
poi-ooxml-schemas-3.10-FINAL.jar
ooxml-schemas-1.1.jar
让上面的罐子为我解决了这个问题。