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)相关推荐

  1. 【Apache POI】Excel操作(四):Excel大数据量的写入

    迷茫代表着你身边还有选择,焦虑意味着你手上还有时间. 有目录,不迷路 前言 超量数据 速率比较 原因剖析 超级版本大救星 往期回顾 前言 之前在下面这期Excel操作: [Apache POI]Exc ...

  2. POI 操作 Excel -大数据量高效读写

    前言 poi的读取的三种模式 模式 说明 读写性 SXSSF 内存中保留一定行数数据,超过行数,将索引最低的数据刷入硬盘 只写 eventmodel 基于事件驱动,SAX的方式解析excel,cup和 ...

  3. POI和easyExcel使用(2)PoI对Excel的基本读写操作

    excel有四个主要对象:工作薄.工作表.行.单元格 1.POI的写操作 创建一个maven项目,需要引入POI的一些包 <!--xls(03)--> <dependency> ...

  4. Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行足矣

    Apache POI和EasyExcel 第七集:EasyExcel的基本操作,读取和写入Excel,一行搞定 一.资源 在这里设置lombok会遇到一个问题,以前在springboot那里都没遇到, ...

  5. Apache POI和EasyExcel 第六集:Apache POI的Excel读取单元格中的计算公式

    Apache POI和EasyExcel 第六集:Apache POI的Excel读取单元格中的计算公式 一.资源 代码实现中的带有计算公式的Excel(xls) 链接:https://pan.bai ...

  6. Apache POI和EasyExcel 第五集:Apache POI的Excel读取不同类型的数据

    Apache POI和EasyExcel 第五集:Apache POI的Excel读取不同类型的数据 一.资源 什么是Apache POI Apache POI 不同类型的数据的表格(xls) 链接: ...

  7. Apache POI和EasyExcel 第四集:Apache POI的Excel基本读取(分为03版的xls、07版的xlsx)

    Apache POI和EasyExcel 第四集:Apache POI的Excel基本读取(分为03版的xls.07版的xlsx) 一.资源 一个十分好用的日期类型处理包,和Java8搭配使用非常好 ...

  8. Java 使用 POI 操作 Excel(反射,大数据量)

    Apache POI 基本介绍 Apache POI 是 Apache 软件基金会提供的 100% 开源库.支持 Excel 库的所有基本功能. 图片来源:易百教程 基本概念 在 POI 中,Work ...

  9. EasyExcel 低内存导出大数据量的Excel方案探索 50万行 50列 (附:实现代码)

    文章目录 1.前言 2.准备工作 3.导出测试 3.1.单次查询.全量导出 3.2. 多次查询,多个文件,单次写入 3.3.多次查询,多个文件,多次写入 3.4.多线程导出探索 3.5.文件打包成ZI ...

最新文章

  1. 如何从KDE中切換到openSUSE的GNOME桌面环境
  2. 【Android 逆向】GDA 逆向工具安装 ( GDA 下载 | GDA 简介 | 运行 GDA 分析 APK 文件 )
  3. 【Android OpenGL ES 开发 (三)】Shader 扩展
  4. ubuntu14.04不能安全卸载移动硬盘
  5. C#LeetCode刷题之#350-两个数组的交集 II(Intersection of Two Arrays II)
  6. Python学习笔记(尚硅谷)
  7. 剑指offer之按之字形打印二叉树
  8. 2013年3月洗衣机类品牌网络知名度排名
  9. Scala的Tuple元素个数的限制问题
  10. Liist Object ? 获取方式
  11. C++学习(一零九)Resource Hacker工具介绍
  12. 信息安全技术--一次一密钥密码
  13. 开发工具总结(8)之图文并茂全面总结上百个AS好用的插件(下)
  14. grep -A -B -C -a -c -n -v -i等
  15. Unity webGl 鼠标手指触屏控制相机围绕物体 360度旋转
  16. 20.Vaild-Parentheses
  17. 电子元器件手册中assert和deassert的含义
  18. 计算机cpu的工作电压,cpu工作电压一般多少是正常的?怎么查看和调整cpu电压?...
  19. 群晖NAS的公网、NAT、DDNS、证书等配置三
  20. 110配线架打法图解_配线架打线的方法以及110配线架的按照流程

热门文章

  1. Xilinx FPGA 芯片命名规则与查询方法
  2. CIC滤波器的参数详细方法与应用
  3. TimeQuest约束外设之诡异的Create Generated Clocks用法
  4. java有无参数求长方形的周长面积_用java面向对象思想编程求长方形的周长和面积...
  5. 程序员过关斩将--面试官再问你Http请求过程,怼回去!
  6. CF724F Uniformly Branched Trees
  7. 批处理命令学习笔记——Start命令
  8. Egret之位图字体
  9. 脏读和数据库一致性的分析
  10. CSS3背景线性渐变