开发者社区> 问答> 正文

poi 处理10M的 07EXCEL 会读取不出来。。。求解:报错

XSSFWorkbook xwb = new XSSFWorkbook("e:\1.xlsx");

XSSFSheet sheet = xwb.getSheetAt(0);

这个EXCEL 10M左右大小  在创建workbook的时候就卡住没反应了。。

求解决方案。。。

展开
收起
kun坤 2020-06-07 16:15:14 680 0
1 条回答
写回答
取消 提交回答
  • 内存溢出######多线程读内容啊######看看你的“没反应”到底是什么情况:CPU 100%?内存溢出?磁盘狂转?… 让大家猜想?######不好意思。。 我用debug的时候 就在那定住了。。。CPU也不高。。也没有硬盘狂转的反映 内存使用也不是非常高。。。 但是就不等很久没反映######我用jxl 很好用的.######不支持。jxl对数据量大处理还是不行的。######jxl不支持2007的格式吧?!######内存溢出了!poi有个大数据处理的方法,使用那个吧 ######内存使用情况 也不是很多。。 也没有溢出的报错。。 就是卡死在那 没反映。。 我去查下资料 谢谢######OPCPackage pkg = OPCPackage.open(filename);  
            XSSFReader r = new XSSFReader(pkg);  
            SharedStringsTable sst = r.getSharedStringsTable();  
            XMLReader parser = fetchSheetParser(sst);  

            Iterator<InputStream> sheets = r.getSheetsData(); 


    用这种方式,100W数据都很快

    ######

    引用来自“江上数峰青”的评论

    OPCPackage pkg = OPCPackage.open(filename);  
            XSSFReader r = new XSSFReader(pkg);  
            SharedStringsTable sst = r.getSharedStringsTable();  
            XMLReader parser = fetchSheetParser(sst);  

            Iterator<InputStream> sheets = r.getSheetsData(); 


    用这种方式,100W数据都很快

    感谢。。这个方法我测试了 可行。。
    2020-06-07 16:15:18
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载