工作中遇到XHTMLConverter.getInstance().convert(document, baos, null);过程中报NullPointerException
解决办法:在HTMLConverter.getInstance().convert(document, baos, null);前面加上代码document.createNumbering();
具体如下(此问题为poi工具包本身问题)
public static String Word2007ToHtml(MultipartFile file) throws IOException {
if (file.isEmpty() || file.getSize() <= 0) {
logger.error("Sorry File does not Exists!");
return null;
} else {
if (file.getOriginalFilename().endsWith(".docx") || file.getOriginalFilename().endsWith(".DOCX")) {
// 1) 加载word文档生成 XWPFDocument对象
InputStream in = file.getInputStream();
XWPFDocument document = new XWPFDocument(in);
// 也可以使用字符数组流获取解析的内容
ByteArrayOutputStream baos = new ByteArrayOutputStream();
//此处不加偶现会报错nullPointException updateBy AlexZ 2020/07/08
document.createNumbering();
XHTMLConverter.getInstance().convert(document, baos, null);
String content = baos.toString();
baos.close();
return content;
} else {
logger.error("Enter only MS Office 2007+ files");
return null;
}
}
}