Android使用POI操作Excel文件

发布时间 2023-07-19 17:16:42作者: BK小鬼

先说问题:

刚开始的时候 我是在Gradle 构建工具 中添加implementation  

dependencies {
    implementation 'org.apache.poi:poi:3.17'
    implementation 'org.apache.poi:poi-ooxml:3.17'
    // 其他依赖项...
}

代码中采用很正常的方式来实现

 Workbook workbook =null;
 try {

        workbook =new XSSFWorkbook();
            // 创建工作表
        Sheet sheet = workbook.createSheet(SheetName);

}catch(Exception e){

}

结果就在 new XSSFWorkbook()的时候出现了异常,而且异常无法捕获到,程序直接跳到下个模块执行,来来回回版本也换了好几个 都是相同的问题,后来 怀疑是引用文件冲突的问题,但没有解决掉,有好的解决方法可以在评论区回复。  下面是换了一种方式来实现

 

集成POI

由于Apache的POI框架里面一些引用类,在JRE中有,但是在Android上面没有,在集成后的使用中会出现一些错误,例如

  • 提示noClassFound javax.xml.xxx
  • java.lang.VerifyError: org/apache/poi/xssf/usermodel/XSSFWorkbook
  • 64k错误

所以不建议使用Apache的POI库,这里建议使用github上大神重新打包的POI阉割版。

Android 5.0以上:Github地址

Android 5.0以下:Github地址

直接下载poi-3.12-android-a.jar和poi-ooxml-schemas-3.12-20150511-a.jar两个jar包,然后放到项目lib目录下,右键Add As Library就可以了。

 

 

这样代码也不用动,功能终于实现了...

 

 

Gradle 构建工具