1 基本介绍

POI提供了HSSF、XSSF以及SXSSF三种方式操作Excel。

HSSF:Excel97-2003版本,扩展名为.xls。一个sheet最大行数65536,最大列数256。
XSSF:Excel2007版本开始,扩展名为.xlsx。一个sheet最大行数1048576,最大列数16384。
SXSSF:是在XSSF基础上,POI3.8版本开始提供的支持低内存占用的操作方式,扩展名为.xlsx。
eg:比如在项目导入时会检测此时的表格结尾是xls还是xlsx后缀,在new对象时就会里用到

提示:SXSSFWorkbook 设置内存中最多只有1000行数据,当超过这个数据时,就将内存之前的数据删除,并且会在硬盘中生成临时文件。从而保证了低内存消耗。
注:针对 SXSSF Beta 3.8下,会有临时文件产生

2 XSSFWorkbook 生成excel

   // 1、创建工作表
    XSSFWorkbook xssfWorkbook = new XSSFWorkbook();
    XSSFSheet xssfSheet = xssfWorkbook.createSheet("sheet名称");
    XSSFRow xssfRow; // 行
    XSSFCell xssfCell; // 列
    // 2、在sheet中创建行,注意判断 第一行是否已经创建,否则会覆盖之前的数据
    xssfRow = xssfSheet.getRow(1);
    if (xssfRow == null) {
        xssfRow = xssfSheet.createRow(1);
    }
    // 3、创建单元格
    xssfCell = xssfRow.createCell(1);
    // 4、设置单元格内容
    xssfCell.setCellValue("测试"); 
    // 5、导出excel
   response.setCharacterEncoding("UTF-8");

response.setHeader("content-Type", "application/vnd.ms-excel");

if (fileName.matches("^.+\\.(?i)(xls)$") || fileName.matches("^.+\\.(?i)(xlsx)$"))

{ fileName = fileName.substring( 0 ,fileName.lastIndexOf("."));

}

response.setHeader("Content-Disposition", "attachment;filename=" +                  URLEncoder.encode(fileName, "UTF-8")+".xlsx" );

out = response.getOutputStream();

workbook.write(out);

out.flush();
   out.close();
   xssfWorkbook.close();

3 获取合并单元格的值

重要其他知识请参考【poi导出excel之XSSFWorkbook】_一个搬砖的农民工的博客-CSDN博客_xssfworkbook

学习poi导出excel之XSSFWorkbook相关推荐

  1. cpu java poi 导出_java基于poi导出excel透视表代码实例

    这篇文章主要介绍了java基于poi导出excel透视表代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 从前,我是一个前端程序猿,怀着对打通 ...

  2. Java POI 导出EXCEL经典实现 Java导出Excel

    转自http://blog.csdn.net/evangel_z/article/details/7332535 在web开发中,有一个经典的功能,就是数据的导入导出.特别是数据的导出,在生产管理或者 ...

  3. Springboot利用poi导出excel下载

    Springboot利用poi导出excel下载 因为项目中之前的做法是用反射获取属性,所以demo中也是用的反射,我看网上很多文章都是存入一个List中,不知道这两种哪种更何合适一点,或者有什么更好 ...

  4. java导出excel 客户端_Java poi导出Excel下载到客户端

    Java poi 导出Excel并下载到客户端,具体内容如下 Maven配置,包含了其他文件格式的依赖,就全贴出来了 org.apache.poi poi-excelant 3.12 org.apac ...

  5. java poi 导出excel不能超过65536行

    java poi 导出excel不能超过65536行 报这个异常 Exception in thread "main" java.lang.IllegalArgumentExcep ...

  6. java利用poi导出excel功能-附带图片导出

    java利用poi导出excel功能-附带图片导出 写在前面 最近刚离职,闲来无事,于是把上两家公司都有碰到过的需求但都没有去研究实现:即导出带图片的excel报表.于是就折腾了一下这个功能,研究出来 ...

  7. Java:使用POI导出Excel文件后打开文件提示因为文件格式或文件扩展名无效而无法打开

    使用POI导出Excel文件后打开文件提示因为文件格式或文件扩展名无效而无法打开 问题 方案 问题 在SpringBoot项目中,使用POI导出查询结果至Excel文件中,成功导出后打开Excel文件 ...

  8. POI导出excel出现excel无法打开文件“xxx.xlsx”,因为文件格式或文件扩展名无效的问题

    POI导出excel出现excel无法打开文件"xxx.xlsx",因为文件格式或文件扩展名无效的问题 HSSFWorkbook和XSSFWorkbook混用会出现该问题 参考 h ...

  9. Springboot整合Poi导出excel(简单版)

    一. 问题引入 博客专栏: Springboot整合Poi导出excel(简单版) Springboot整合Poi导出excel(注解版) 总所周知Springboot是一个功能强大的微服务框架,集成 ...

最新文章

  1. struts2中action向action之间传数据和action向jsp传数据理解
  2. 全球及中国蓝牙智能锁行业发展格局及投资经营效益分析报告2022-2027年
  3. python 双向链表_数据结构-双向链表(Python实现)
  4. Ubuntu14.04下搭建LAMP环境
  5. YBTOJ:公共子串(KMP)
  6. xtend怎么使用_使用Xtend构建Vaadin UI
  7. UCenter 表结构
  8. 链接数据库增删改通用
  9. iPhone 6S GPU到底多强
  10. 【转】零拷贝的实现原理
  11. 信创产业已成现象级新风口 代码“源头”安全该如何守护?
  12. C#随机不重复给数组赋值1-100并排序
  13. apache POI技术的使用
  14. vue笔记 keyboard+隐藏input光标+自动跳转到下一个input
  15. MATLAB算术均值滤波器
  16. router-vue中meta参数
  17. 网页版php手机端怎么转wap页,【原创文章】介绍一个手机浏览器中ecshop WAP版和PC版自由切换的方法...
  18. Linux Regulator Framework(1) - Framework
  19. Metasploitable渗透测试实战:ms17-010
  20. miniftp服务器技术文档,ftp服务器 mini

热门文章

  1. Blazor实战——Known框架快速开始
  2. WebRTC服务器搭建
  3. vscode中使用tensorboard的坑爹记录
  4. 你好,请帮我写一份文案,內容是关于茶叶的介绍,包括茶叶的历史、种植、茶道、茶叶的分类、茶叶对人体健康的益处等,可自由发挥,字数1000字以上...
  5. 手机安装Fiddler 证书
  6. 第一章复习题和习题答案
  7. Halcon python接口
  8. eclipse webContent改为webapp
  9. Android实现图片点击放大
  10. 【Exception】WIN10蓝屏:SYSTEM_SERVICE_EXCEPTION 蓝屏: KERNEL-SECURITY-CHECK-FAILUR WIN10 vmware启动CentOS 蓝屏