【报错汇总】Java导入Excel模版时出现org.apache.poi.poifs.filesystem.OfficeXmlFileException异常

导入Excel2007的文件就会报如下异常: 
org.apache.poi.poifs.filesystem.OfficeXmlFileException: The supplied data appears to be in the Office 2007+ XML. You are calling the part of POI that deals with OLE2 Office Documents. You need to call a different part of POI to process this data (eg XSSF instead of HSSF)

该错误意思是说,文件中的数据是用Office2007+XML保存的,而现在却调用OLE2 Office文档处理,应该使用POI不同的部分来处理这些数据,比如使用XSSF来代替HSSF。


如果只是支持Excel2003的话,需要导入的poi包只需要: 
- dom4j-1.6.1.jar 
- poi-3.8-20120326.jar 
但是如果要同时支持Excel2003和Excel2007就得需要:

dom4j-1.6.1.jar
poi-3.8-20120326.jar
poi-ooxml-3.8-20120326.jar
poi-ooxml-schemas-3.8-20120326.jar
poi-scratchpad-3.8-20120326.jar
xmlbeans-2.3.0.jar
个人总结:如果是是2013版及之前的,创建工作簿的时候使用:HSSFWorkbook workbook = new HSSFWorkbook();相应的之后在创建表格,行,单元格
时使用:HSSFSheet sheet 、HSSFRow row、HSSFCell cell,
如果是是2017版,创建工作簿的时候使用:  XSSFWorkbook workbook = new XSSFWorkbook();相应的之后在创建表格,行,单元格时使用:Sheet sheet、Row row、Cell  cell。

  <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>4.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.0.1</version>
        </dependency>

        <!--2010年EXCEL需要的包-->
        <dependency>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
            <version>1.6.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml-schemas</artifactId>
            <version>3.8</version>
        </dependency>
        <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-scratchpad</artifactId>
        <version>3.8</version>
       </dependency>
        <dependency>
            <groupId>org.apache.xmlbeans</groupId>
            <artifactId>xmlbeans</artifactId>
            <version>2.3.0</version>
        </dependency>

  

参考文章: 
1.http://my.oschina.net/u/658145/blog/268112 
2.http://blog.csdn.net/mmm333zzz/article/details/7962377 
3.http://blog.csdn.net/sdfe63/article/details/20955209

猜你喜欢

转载自www.cnblogs.com/EarlyBridVic/p/12034186.html