将扩展名为“ .dotx”的文件(模板)转换为“ docx”(Word文件)
如何使用POI API或Docx4j将“ .dotx” Word模板转换为普通的“ .docx”?
-
需要将内容类型
/word/document.xml
从更改application/vnd.openxmlformats- officedocument.wordprocessingml.template.main+xml
为application/vnd.openxmlformats- officedocument.wordprocessingml.document.main+xml
。使用示例
apache poi 4.0.1
:import java.io.FileInputStream; import java.io.FileOutputStream; import org.apache.poi.xwpf.usermodel.*; public class WordReadDOTXSaveDOCX { public static void main(String[] args) throws Exception { XWPFDocument document = new XWPFDocument(new FileInputStream("StudentReport.dotx")); document.getPackage().replaceContentType( "application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml", "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"); FileOutputStream out = new FileOutputStream("TheDocumentFromDOTXTemplate.docx"); document.write(out); out.close(); document.close(); } }