EXCEL最大行数问题:org.apache.xmlbeans.impl.store.Saver$TextSaver.resize(Saver.java:1700)
2023-09-14 08:57:00 时间
今天在使用POI导出数据时,出现如下错误:
ES查询阅读推荐比:336 resList:87555 start:89500 写入excel Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at org.apache.xmlbeans.impl.store.Saver$TextSaver.resize(Saver.java:1700) at org.apache.xmlbeans.impl.store.Saver$TextSaver.preEmit(Saver.java:1303) at org.apache.xmlbeans.impl.store.Saver$TextSaver.emit(Saver.java:1190) at org.apache.xmlbeans.impl.store.Saver$TextSaver.emitElement(Saver.java:962) at org.apache.xmlbeans.impl.store.Saver.processElement(Saver.java:476) at org.apache.xmlbeans.impl.store.Saver.process(Saver.java:307) at org.apache.xmlbeans.impl.store.Saver$TextSaver.saveToString(Saver.java:1864) at org.apache.xmlbeans.impl.store.Cursor._xmlText(Cursor.java:546) at org.apache.xmlbeans.impl.store.Cursor.xmlText(Cursor.java:2436) at org.apache.xmlbeans.impl.values.XmlObjectBase.xmlText(XmlObjectBase.java:1500) at org.apache.poi.xssf.model.SharedStringsTable.getKey(SharedStringsTable.java:142) at org.apache.poi.xssf.model.SharedStringsTable.addEntry(SharedStringsTable.java:188) at org.apache.poi.xssf.usermodel.XSSFCell.setCellValue(XSSFCell.java:462) at org.apache.poi.xssf.usermodel.XSSFCell.setCellValue(XSSFCell.java:426) at com.mkit.export.util.Write2File.writeTopic2File(Write2File.java:93) at com.mkit.export.util.FindWeMedia.findWeMedia(FindWeMedia.java:110) at com.mkit.export.main.ExportWeMedia.main(ExportWeMedia.java:13)
开始我以为是java分配内存不够用,使用命令指定JVM大小后仍然出现错误。
/usr/local/java/jdk1.8.0_121/bin/java -Xmx1024m -Xms512m -jar exWeMedia.jar
最后发现是EXCEL问题:
Excel2003的最大行是65536行,从Excel2007开始最大行是1048576。
解决办法:
Workbook wb = new SXSSFWorkbook(); (将原来的XSSFWorkbook 改为:SXSSFWorkbook)
Sheet sheet = wb.createSheet();
如果行数大于了最大值(1048576),那么可以考虑将数据切分成多个sheet来解决问题
相关文章
- Java别说取余(%)运算简单,你真的会吗?
- Java高并发读写文件[通俗易懂]
- java 调用.asmx_Java调用asmx的一个例子
- excel宏 java,Microsoft Excel宏运行Java程序
- java软件工程师是做什么的_JAVA软件工程师是做什么的?
- Java安装教程
- java 生成xml dom4j_Java生成xml——DOM4J生成
- java 随机数算法_Java随机数算法原理与实现方法实例详解
- 【说站】java继承中有哪些注意点
- 【说站】java中变量的使用注意
- JAVA对象转map_java处理字符串类型的map
- java的线程是用户态还是内核态_内核态和用户态的区别
- Java分隔符
- java数据导出为excel表格_将数据库表中数据导出到文本文件
- java中jbpm工作流_java流程控制
- Spring+Spring MVC+MyBatis_java的图书管理系统
- java基础用BigDecimal保留两位小数「建议收藏」
- jdbctemplate查询为空报错_java空指针异常举例
- Python xlwt数据保存到 Excel中以及xlrd读取excel文件画图
- 杨辉三角形(二维坐标基础题)——Java-二维数组版本
- 【愚公系列】2023年03月 Java教学课程 092-Servlet服务器的Cookie
- Java内部类总结详解编程语言
- Java中对List集合内的元素进行顺序、倒序、随机排序的示例代码详解编程语言
- 持久化Java持久化技术与Redis高级应用(redis高级之java)
- 服务器上的文件Java获取Linux服务器文件:简单又高效的操作方法(java获取linux)
- MySQL数据导出Excel快速教程(mysql转excel)
- Linux下配置Java开发环境的指南(linux配置java环境)
- 时间如何设置Redis Java中的过期时间(redisjava过期)
- Oracle 宣布 Java 7 生命周期终结
- Learn How to Connect Your Java Application with MongoDB in Just a Few Steps(java连接mongodb)
- Java如何帮助掌握Oracle(java了解oracle)
- Java中Oracle使用实践(java中oracle题)
- 项目Java项目中展现Redis新型性能优势(redis运用在java)
- Java消息处理实践突破性技术Redis(redis消息 java)
- Java基本类型与包装类详细解析