Apache POI和EasyExcel 第三集:Apache POI的Excel大数据量写入(分为03版的xls、07版的xlsx、升级版SXSSF)
Apache POI和EasyExcel 第三集:Apache POI的Excel大数据量写入(分为03版的xls、07版的xlsx、升级版SXSSF)
一、结果
我的03跑了1.204秒,07跑了5.173秒,升级版跑了1.96秒,大家的会是多少呢?
二、代码实现
@Testpublic void testWrite03BigData() throws IOException {//记录开始时间long begin = System.currentTimeMillis();//创建一个SXSSFWorkbookWorkbook workbook = new HSSFWorkbook();//创建一个sheetSheet sheet = workbook.createSheet();//xls文件最大支持65536行for (int rowNum = 0; rowNum < 65536; rowNum++) {//创建一个行Row row = sheet.createRow(rowNum);for (int cellNum = 0; cellNum < 10; cellNum++) {//创建单元格Cell cell = row.createCell(cellNum);cell.setCellValue(cellNum);}}System.out.println("done");FileOutputStream out = new FileOutputStream(path + "bigdata03.xls");workbook.write(out);// 操作结束,关闭文件out.close();//记录结束时间long end = System.currentTimeMillis();System.out.println((double) (end - begin) / 1000);}@Testpublic void testWrite07BigData() throws IOException {//记录开始时间long begin = System.currentTimeMillis();//创建一个SXSSFWorkbookWorkbook workbook = new XSSFWorkbook();//创建一个sheetSheet sheet = workbook.createSheet();//xls文件最大支持65536行for (int rowNum = 0; rowNum < 65536; rowNum++) {//创建一个行Row row = sheet.createRow(rowNum);for (int cellNum = 0; cellNum < 10; cellNum++) {//创建单元格Cell cell = row.createCell(cellNum);cell.setCellValue(cellNum);}}System.out.println("done");FileOutputStream out = new FileOutputStream(path + "bigdata07.xlsx");workbook.write(out);// 操作结束,关闭文件out.close();//记录结束时间long end = System.currentTimeMillis();System.out.println((double) (end - begin) / 1000);}@Testpublic void testWrite07BigDataFast() throws IOException {//记录开始时间long begin = System.currentTimeMillis();//创建一个SXSSFWorkbookSXSSFWorkbook workbook = new SXSSFWorkbook();//创建一个sheetSheet sheet = workbook.createSheet();//xls文件最大支持65536行for (int rowNum = 0; rowNum < 100000; rowNum++) {//创建一个行Row row = sheet.createRow(rowNum);for (int cellNum = 0; cellNum < 10; cellNum++) {//创建单元格Cell cell = row.createCell(cellNum);cell.setCellValue(cellNum);}}System.out.println("done");FileOutputStream out = new FileOutputStream(path + "bigdata07-fast.xlsx");workbook.write(out);// 操作结束,关闭文件out.close();//清除临时文件workbook.dispose();//记录结束时间long end = System.currentTimeMillis();System.out.println((double) (end - begin) / 1000);}
Apache POI和EasyExcel 第三集:Apache POI的Excel大数据量写入(分为03版的xls、07版的xlsx、升级版SXSSF)相关推荐
- 【Apache POI】Excel操作(四):Excel大数据量的写入
迷茫代表着你身边还有选择,焦虑意味着你手上还有时间. 有目录,不迷路 前言 超量数据 速率比较 原因剖析 超级版本大救星 往期回顾 前言 之前在下面这期Excel操作: [Apache POI]Exc ...
- POI 操作 Excel -大数据量高效读写
前言 poi的读取的三种模式 模式 说明 读写性 SXSSF 内存中保留一定行数数据,超过行数,将索引最低的数据刷入硬盘 只写 eventmodel 基于事件驱动,SAX的方式解析excel,cup和 ...
- POI和easyExcel使用(2)PoI对Excel的基本读写操作
excel有四个主要对象:工作薄.工作表.行.单元格 1.POI的写操作 创建一个maven项目,需要引入POI的一些包 <!--xls(03)--> <dependency> ...
- Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行足矣
Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行搞定 一.资源 在这里设置lombok会遇到一个问题,以前在springboot那里都没遇到, ...
- Apache POI和EasyExcel 第六集:Apache POI的Excel读取单元格中的计算公式
Apache POI和EasyExcel 第六集:Apache POI的Excel读取单元格中的计算公式 一.资源 代码实现中的带有计算公式的Excel(xls) 链接:https://pan.bai ...
- Apache POI和EasyExcel 第五集:Apache POI的Excel读取不同类型的数据
Apache POI和EasyExcel 第五集:Apache POI的Excel读取不同类型的数据 一.资源 什么是Apache POI Apache POI 不同类型的数据的表格(xls) 链接: ...
- Apache POI和EasyExcel 第四集:Apache POI的Excel基本读取(分为03版的xls、07版的xlsx)
Apache POI和EasyExcel 第四集:Apache POI的Excel基本读取(分为03版的xls.07版的xlsx) 一.资源 一个十分好用的日期类型处理包,和Java8搭配使用非常好 ...
- Java 使用 POI 操作 Excel(反射,大数据量)
Apache POI 基本介绍 Apache POI 是 Apache 软件基金会提供的 100% 开源库.支持 Excel 库的所有基本功能. 图片来源:易百教程 基本概念 在 POI 中,Work ...
- EasyExcel 低内存导出大数据量的Excel方案探索 50万行 50列 (附:实现代码)
文章目录 1.前言 2.准备工作 3.导出测试 3.1.单次查询.全量导出 3.2. 多次查询,多个文件,单次写入 3.3.多次查询,多个文件,多次写入 3.4.多线程导出探索 3.5.文件打包成ZI ...
最新文章
- 如何从KDE中切換到openSUSE的GNOME桌面环境
- 【Android 逆向】GDA 逆向工具安装 ( GDA 下载 | GDA 简介 | 运行 GDA 分析 APK 文件 )
- 【Android OpenGL ES 开发 (三)】Shader 扩展
- ubuntu14.04不能安全卸载移动硬盘
- C#LeetCode刷题之#350-两个数组的交集 II(Intersection of Two Arrays II)
- Python学习笔记(尚硅谷)
- 剑指offer之按之字形打印二叉树
- 2013年3月洗衣机类品牌网络知名度排名
- Scala的Tuple元素个数的限制问题
- Liist Object ? 获取方式
- C++学习(一零九)Resource Hacker工具介绍
- 信息安全技术--一次一密钥密码
- 开发工具总结(8)之图文并茂全面总结上百个AS好用的插件(下)
- grep -A -B -C -a -c -n -v -i等
- Unity webGl 鼠标手指触屏控制相机围绕物体 360度旋转
- 20.Vaild-Parentheses
- 电子元器件手册中assert和deassert的含义
- 计算机cpu的工作电压,cpu工作电压一般多少是正常的?怎么查看和调整cpu电压?...
- 群晖NAS的公网、NAT、DDNS、证书等配置三
- 110配线架打法图解_配线架打线的方法以及110配线架的按照流程