问题遇到的现象和发生背景
今天我在用POI读取word文件 doc 报错146146
问题相关代码,请勿粘贴截图
/**
* 获取正文文件内容,doc方法
*
* @param input
* @return
*/
public List<String> getContentDoc(InputStream input) {
List<String> list = new ArrayList<>();
try {
// 2003版本的word
WordExtractor extractor = new WordExtractor(input); // 2003版本 仅doc格式文件可处理,docx文件不可处理
String[] paragraphText = extractor.getParagraphText(); // 获取段落,段落缩进无法获取,可以在前添加空格填充
if (paragraphText != null && paragraphText.length > 0) {
for (String paragraph : paragraphText) {
if (!paragraph.startsWith(" ")) {
list.add(paragraph + "\r\n");
} else {
list.add(paragraph);
}
}
}
} catch (Exception e) {
e.printStackTrace();
log.error("doc解析正文异常:" + e);
throw new ServiceProcessException(e.getMessage());
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
e.printStackTrace();
log.error("" + e);
}
}
}
return list;
}
运行结果及报错内容
我的解答思路和尝试过的方法
WordExtractor extractor = new WordExtractor(input);
这段代码报错,是不是不支持这个word文档类型,我怀疑这个文档是通过其他文件转过来的
我想要达到的结果
请问大家遇到过这种错误吗?