【POI】导出xls文件报错:The maximum number of cell styles was exceeded. You can define up to 4000 styles in a .xls workbook

使用POI导出xls文件,由于数据过多,导致导出xls报错如下:

The maximum number of cell styles was exceeded. You can define up to 4000 styles in a .xls workbook 

 

原因:

代码中创建

HSSFCellStyle cellStyle = hssfWorkbook.createCellStyle();

次数过多,导致报错。

 

解决方法:

把创建HSSFCellStyle对象放在循环之外,或者放在全局,仅创建一次就可以多次使用。

或者可以把创建的相关对象全都提取为static,一次赋值  多次使用。。。。每次使用的时候,判断对象是否有值,如果没有就创建并赋值,缓存下来。如果有,直接使用!!!

时间: 2024-08-01 06:14:14

【POI】导出xls文件报错:The maximum number of cell styles was exceeded. You can define up to 4000 styles in a .xls workbook的相关文章

在线等大神-poi导出后台提示报错,Minimum column number is 0!

问题描述 poi导出后台提示报错,Minimum column number is 0! 今天在用poi做导出的时候遇到一些问题! java.lang.IllegalArgumentException: Minimum column number is 0 at org.apache.poi.ss.util.CellRangeAddressBase.validateColumn(CellRangeAddressBase.java:73) at org.apache.poi.ss.util.Cel

如何解决在jsp页面上导入.xls文件报错问题_JSP编程

在jsp页面上导入.xls文件,报错: java.io.IOException: Posted content type isn't multipart/form-data at com.oreilly.servlet.multipart.MultipartParser.<init>(MultipartParser.java:166) at com.oreilly.servlet.MultipartRequest.<init>(MultipartRequest.java:222)

tomcat报错INFO: Maximum number of threads (200) created for connector with address null and port 8080

一.发现问题 INFO: Maximum number of threads (200) created for connector with address null and port 8080 说明:最大线程数错误 解决方案:使用线程池,用较少的线程处理较多的访问,可以提高tomcat处理请求的能力. 二.使用方法 打开/conf/server.xml增加 <Executor name="tomcatThreadPool" namePrefix="catalina-

java-用cxf2.7.11导出JAVA客户端文件报错

问题描述 用cxf2.7.11导出JAVA客户端文件报错 cmd中命令如下: wsdl2java http://222.223.220.146:1818/U9/Services/UFIDA.U9.ISV.ER.ImportSV.ICreateReimBillSV.svc?wsdl 报错信息如图: cmd命令如下: wsdl2java -d d:JavaService -verbose http://222.223.220.146:1818/U9/Services/UFIDA.U9.ISV.ER.

io流-.jsp页面IO流读取文件报错

问题描述 .jsp页面IO流读取文件报错 <%@ page language=""java"" import=""java.util.*"" pageEncoding=""gb2312""%><%@ page import=""java.io.*""%><%@ page import=""org.a

navicat for sqlite 导出数据库过程报错

问题描述 navicat for sqlite 导出数据库过程报错 之前用的好好地,今天新建了一个带图片的表,导出过程就报错了...百度了很久,说是删除BDE重装,结果我硬是没有找到BDE,我现在该怎么做. 解决方案 Navicat For SQLiteNavicat for SQLiteNavicat for SQLite的使用 解决方案二: 重新建立一个数据库文件,然后建立表等试试

解决IIS下UTF-8文件报错乱码问题

解决IIS下UTF-8文件报错乱码的问题 原因: 你的网站是utf-8编码,但iis的错误信息输出默认使用的是gb2312编码.导致iis出现运行时错误的时候显示的页面是乱码. 解决办法: [办法1] 自己处理错误,不让iis来处理. 在所有可能出错的地方,都用类似下面的方式来捕捉. On Error Resume Next Err.Raise 6 '这行是可能出错的代码 If Err Then Response.Write Err.Description Response.End End If

win8.1复制文件报错“目标文件夹访问被拒绝”怎么办

  解决win8.1系统复制文件报错"目标文件夹访问被拒绝"的方法 方法如下: 1. 按"Win+X"快捷键,在弹出菜单中选择"命令提示符(管理员)",输入"icacls c: /setintegritylevel M"命令回车,稍等几分钟,执行完成即可将C盘安全级别下调至M级.(如果想要恢复的话,则使用icacls c: /setintegritylevel H即可将C盘安全级别上升至H级.) 2. 右击C盘"属性

jsp文件报错,提示line break point

问题描述 jsp文件报错,提示line break point <%@ page language="java" import="java.util.*,com.zy.domain.*" pageEncoding="utf-8"%> 这句话被提示line break point 解决方案 采用删除法进行排除,看是不是语法错误,直到删去整句话为止.如果还有问题,那就不是这句话的问题了.