POI导出word/excel报错:The supplied data appears to be in the OLE2 Format. You are calling the part of...

该问题适用于word和excel,本文用word说明。

情况是读取word模板,然后生成新的word并导出,在生成过程中出现了如下错误:

The supplied data appears to be in the OLE2 Format. You are calling the part of POI that deals with OOXML (Office Open XML) Documents. You need to call a different part of POI to process this data (eg HSSF instead of XSSF) 

看字面意思是说我们提供的数据是OLE2格式的,但是导出用的工具是OOXML格式的。
一开始我也没明白这个数据是指什么数据,后来看了源码明白了,我们的模板的.doc结尾的,属于是OLE2格式,但导出用的工具是OOXML格式,也就是说需要对应.docx格式的文件才对。

知道原因就好解决了,把文件模板复制出来,打开然后另存为.docx格式,替换掉原来的模板,再次执行,一切正常。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容