在开发过程中,数据导出excel的功能很常见,数据少,到没问题,一旦超过65535条数据就会报错,因此可以考虑导出多个sheet来解决,代码如下:

    private static void exportExcel() throws Exception {
//总记录数
int totalNum = 200000;
//每个sheet设置60000
int avgNum = 60000; //建立新的sheet对象(excel的表单)
//计算需要生成多少个sheet
int sheetCount = (int) Math.ceil(Double.valueOf(totalNum) / Double.valueOf(avgNum));
File tempFile = new File("E:\\result5.xls");
FileOutputStream outputStream = new FileOutputStream(tempFile);
//创建HSSFWorkbook对象(excel的文档对象)
HSSFWorkbook wb = new HSSFWorkbook();
for (int i = 0; i < sheetCount; i++) {
HSSFSheet tempSheet = wb.createSheet("号段数据" + (i + 1));
HSSFRow tempRow = tempSheet.createRow(0);
//创建单元格并设置单元格内容
tempRow.createCell(0).setCellValue("名称");
tempRow.createCell(1).setCellValue("电话");
tempRow.createCell(2).setCellValue("是否有效");
tempRow.createCell(3).setCellValue("是否微信");
//在sheet里创建第三行
int startIndex = (i > 0 ? (i * avgNum) : 1);
int endIndex = ((i + 1) * avgNum) > totalNum ? totalNum : ((i + 1) * avgNum);
for (int j = startIndex; j <= totalNum; j++) {
if (j < endIndex) {
int rowIndex = (i > 0 ? (j - (i * avgNum)) + 1 : j);
HSSFRow tempRow2 = tempSheet.createRow(rowIndex);
tempRow2.createCell(0).setCellValue("test" + (j));
tempRow2.createCell(1).setCellValue("12312342312");
tempRow2.createCell(2).setCellValue("是");
tempRow2.createCell(3).setCellValue("是");
} }
}
wb.write(outputStream); outputStream.flush();
outputStream.close();
//以下是输出Excel文件
}

java导出excel单sheet超过65535数据报错拆分多sheet导出的更多相关文章

  1. 【每日一点】1. Java如何实现导出Excel单表头或多表头

    一.背景 在后台项目中,经常会遇到将呈现的内容导出到Excel的需求,通过都是导出单个表头的Excel文件,如果存在级联关系的情况下,也就需要导出多表头的场景.今天这篇文章就是分享导出Excel单表头 ...

  2. NPOI导出Excel(含有超过65335的处理情况)

    NPOI导出Excel的网上有很多,正好自己遇到就学习并总结了一下: 首先说明几点: 1.Excel2003及一下:后缀xls,单个sheet最大行数为65335 Excel2007 单个sheet ...

  3. 通过Excel导入Mysql 超过65535条数据的办法

    1.截取 65534条数据,进行分sheet,然后1个sheet导入一张表,最后进行整合! 2.采用TXT导入方式,TXT的导入暂时没发现限制的数据条数,下午用TXT导入74万条数据成功 3.如果遇到 ...

  4. POI导出excel,本地测试没问题,linux测试无法导出

    java.lang.RuntimeException: java.io.IOException: No such file or directory        at org.apache.poi. ...

  5. java 实现导出Excel文件

    java 实现导出Excel(java生成 excel 并导出文件) 经常有有一些数据需要导出成   excel  格式 ,所以就需要实现啦 开始: 1.加入jar poi-3.6-20091214. ...

  6. 项目笔记:导出Excel功能分sheet页插入数据

    导出Excel功能分sheet页处理数据: /*导出EXCEL*/ public void createExcel() { log.info("导出Excel功能已经启动-BEGIN&quo ...

  7. java导出excel(easypoi)

    介绍 easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 ...

  8. ASP.Net MVC中数据库数据导出Excel,供HTTP下载(转)

    转自http://www.cnblogs.com/hipo/archive/2012/03/13/2394019.html 一.关于下载 一般对下载权限有没有限制,或安全性要求不高的情况下,基于web ...

  9. ASP.Net MVC中数据库数据导出Excel,供HTTP下载

    本文来自:http://www.cnblogs.com/hipo/archive/2012/03/13/2394019.html 一.关于下载 一般对下载权限有没有限制,或安全性要求不高的情况下,基于 ...

随机推荐

  1. 全栈交叉编译X86完成过程经验分享

    1 CMAKE的交叉编译配置 主要是C和C++编译器的配置和SYSROOT的配置. set (CMAKE_SYSTEM_NAME "Linux") set (CMAKE_SYSTE ...

  2. 短信登录与注册接口、前端所有方式登录注册页面、redis数据库介绍与安装

    今日内容概要 短信登陆接口 短信注册接口 登陆注册前端 redis介绍和安装 内容详细 1.短信登陆接口 在视图类 user/views.py中修改并添加: from .serializer impo ...

  3. 用ffmpeg对视频进行处理

    下载安装配置教程:传送门 关键步骤Windows: 官网 合并音频和视频 with open('video/x111.mp4','wb') as f: f.write(data_30080) with ...

  4. vue 代码调试神器

    一.序 工欲善其事,必先利其器.作为一名资深程序员,相信必有一款调试神器相伴左右,帮助你快速发现问题,解决问题.作为前端开发,我还很年轻,也喜欢去捣鼓一些东西,借着文章的标题,先提一个问题:大家目前是 ...

  5. 243张图片为你解析轻量级自动运维化工具Ansible

    Ansible 是什么 ? ansible架构图 ansible特性  模块化:调用特定的模块,完成特定的任务: 基于Python语言研发,由Paramiko, PyYAML和Jinja2三个核心库实 ...

  6. Linux Troubleshooting 超实用系列 - Disk Analysis

    笔者历史文章: https://github.com/CarlJi/words 关于磁盘的使用,实际生产中以下问题会较为常见: No space left on device - 空间不足 Disk ...

  7. WinUI3开发笔记(Ⅱ)

    WinUI3中的"MessageBox.Show()" # (一,如何实现) "开发WinUI3,第一个不适就是消息弹窗!" WinUI中没有C#.NetFra ...

  8. CentOS6.x静默安装Oracle12c

    一.准备 1.1 安装环境 系统要求 内存 > 2G 安装目录空间 > 6.5G /tmp目录空间 > 1G 操作系统 cat /etc/redhat-release 用rpm命令确 ...

  9. 122_Power Pivot&Power BI不连续日期的日环比

    博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 这两天有朋友在交流,dax中使用时间智能函数写日环比,一个 dateadd 就可以了.但是有些业务不是每天都连续 ...

  10. K8S Flannel网络插件

    0.前言 参考文档:https://github.com/containernetworking/cni Pod网络插件,为了实现Pod网络而需要的插件.组件.由于Kubernetes通过开放的CNI ...