【发布时间】:2010-04-07 12:59:50
【问题描述】:
我正在寻找一个简单的示例代码或完整的教程,如何使用 Apache POI 及其底层 openxml4j 创建一个 docx 文件。
我尝试了以下代码(在 Content Assist 的很多帮助下,感谢 Eclipse!)但代码无法正常工作。
String tmpPathname = aFilename + ".docx";
File tmpFile = new File(tmpPathname);
ZipPackage tmpPackage = (ZipPackage) OPCPackage.create(tmpPathname);
PackagePartName tmpFirstPartName = PackagingURIHelper.createPartName("/FirstPart");
PackagePart tmpFirstPart = tmpPackage.createPart(tmpFirstPartName, "ISO-8859-1");
XWPFDocument tmpDocument = new XWPFDocument(tmpPackage); //Exception
XWPFParagraph tmpParagraph = tmpDocument.createParagraph();
XWPFRun tmpRun = tmpParagraph.createRun();
tmpRun.setText("LALALALAALALAAAA");
tmpRun.setFontSize(18);
tmpPackage.save(tmpFile);
抛出的异常如下:
Exception in thread "main" java.lang.NullPointerException
at org.apache.poi.POIXMLDocumentPart.read(POIXMLDocumentPart.java:235)
at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:196)
at org.apache.poi.xwpf.usermodel.XWPFDocument.<init>(XWPFDocument.java:94)
at DocGenerator.makeDocxWithPoi(DocGenerator.java:64)
at DocGenerator.main(DocGenerator.java:50)
有人可以帮我解决我的(非常简单的)要求吗?
【问题讨论】:
-
我从哪里得到这个库?
-
@AkashG 你可能需要几个库。大多数/所有的 Apache POI/OOXML 内容都在这里:mvnrepository.com/artifact/org.apache.poi(OOXML 是构建 Word 的开源标准。)
标签: java docx apache-poi