Java使用poi操作excel注意事项
Java使用poi操作excel注意事项
1.如果只需要获取sheet信息,用流模式打开文件即可获取,消耗内存少
2.上传的文件需要校验,防止Excel包含异常的缓存文件,缓存文件可能会有几百兆,会瞬间造成内存溢出系统崩溃
3.文件校验逻辑,先判断zip炸弹,在解压文件到本地,解压时刻获取文件大小进行校验,并限制解压循环次数和文件个数,判断Excel中如果包含过大子文件则进行特殊提醒处理
4.ZipSecureFile.setMinInflateRatio(-1.0d),防止Excel解析时遇到zip炸弹
5.wb.setSheetName(index,名称),sheet改名,如果非必须,不要改名,小概率会引起文件报错,
6.FormulaEvaluator formulaEvaluator = wb.getCreationHelper().createFormulaEvaluator(),创建公式计算对象,一个workbook一个,避免重复创建消耗性能
7.获取合并区域的值切记合并后只有左上角有值,建议一个sheet统一先获取合并区域的值然后转Map,后续从Map中获取合并单元格的值,避免在获取合并单元格值的时候因为大量的合并单元格导致解析异常的慢
8.单元格数据需要按照类型来处理,字符串,公式,空白,数字,等自定义类型
9.数字最为复杂,包含各种自定义,日期,货币,小数
10.DataFormatter dataFormatter =new DataFormatter(),dataFormatter.formatRawCellContents(单元格值,cell.getCellStyle().getDataFormat(),cell.getCellStyle().getDataFormatString()),这样格式化数据样式是目前还原率最高的方式,但是还有10种左右自定义数据类型无法还原,usermodel模式,sax模式,easyExcel都有同样的问题,目前无法解决,等待poi更新
11.设置sheet可见,wb.setActiveSheet(sheetIndex),wb.setSelectedTab(sheetIndex),wb.setFirstVisibleTab(sheetIndex),来一套才可以正常展示
Java使用poi操作excel注意事项相关推荐
- execle java,Java使用POI操作Excel
Java使用POI操作Excel 1. POI操作Excel 1.1. 依赖 org.apache.poi poi 4.1.0 org.apache.poi poi-ooxml 4.1.0 org.a ...
- java使用poi操作excel删除一整行
java使用poi操作excel删除一整行 需求1:删除excel表格第4行 代码示例: sheet.shiftRows(4, sheet.getLastRowNum(),-1); 第一个参数为行数( ...
- JAVA使用POI操作Excel表,XSSF(xlsx)和HSSF(xls)
JAVA使用POI操作Excel表,XSSF(xlsx)和HSSF(xls) *** POI的结构: ---*HSSF - 提供读写Microsoft Excel格式档案的功能. ---*XSSF - ...
- Java 使用 POI 操作 Excel
Apache POI 基本介绍 Apache POI 是 Apache 软件基金会提供的 100% 开源库.支持 Excel 库的所有基本功能. 图片来源:易百教程 基本概念 在 POI 中,Work ...
- Java 使用 POI 操作 Excel(反射,大数据量)
Apache POI 基本介绍 Apache POI 是 Apache 软件基金会提供的 100% 开源库.支持 Excel 库的所有基本功能. 图片来源:易百教程 基本概念 在 POI 中,Work ...
- java使用poi操作excel(读、写)
摘要: Jakarta POI 是apache的子项目,目标是处理ole2对象.它提供了一组操纵Windows文档的Java API 目前比较成熟的是HSSF接口,处理MS Excel(97-2007 ...
- Java实战—POI操作Excel文档、读取、写入、合并单元格
一.POI项目简介 POI全称 Poor Obfuscation Implementation,利用POI接口可以通过JAVA操作Microsoft office 套件工具的读写功能.官网:http: ...
- Java使用POI操作Excel文件
我们可以使用POI操作Excel文件,本文主要介绍:"导入POI的Maven依赖"."创建Poi对象"."Poi读取Excel工作表数目". ...
- java用poi操作excel,2003,2007,2010
原文: [url]http://happyqing.iteye.com/blog/1965570[/url] [color=red]通过POI统一读取Excel文件[/color](兼容97-2003 ...
最新文章
- java 获取linux mac_java在linux获得ip地址和mac
- 2018QBXT刷题游记(15)
- 根据status信息对MySQL服务器进行优化-1
- 6.3文件传输协议FTP
- java serializable 源码_Java源码分析之-Serializable接口
- Matlab数据标准化
- 树莓派2代干货帖(第一天)按图索骥的搭建
- 东北大学linux程序设计考试,Linux认证考试试题及答案
- 大数据分析师应掌握哪种编程语言
- Sakai 2.6 配置
- 冬训成果何在?林丹无缘新赛季首冠状态成迷
- Win7盗版提示,屏幕右下角出现 Windows内部版本7601此Windows副本不是正版怎么办...
- springboot上传图片
- Unity 扫描 二维码
- mongodb数据库添加用户名密码以及忘记密码重置操作
- 2021年全球圆锥破碎机收入大约1357.4百万美元,预计2028年达到1665.6百万美元
- 重启网卡提示Bringing up interface eth0
- 编译原理期末复习—第一章概论
- 动漫人物人体结构难学么?衣物怎么画?
- 微信怎样绑定企业邮箱?企业邮箱微信提醒?微信和邮箱能绑定吗?
热门文章
- 轮胎规格:195/60 R15
- Vue3留言墙项目——主体部分静态、mock
- 浏览器内核和js引擎
- H5移动端页面设计心得分享(转载)
- DNS服务--nslookup解析报错UnKnown 找不到 www.xxx.com: Server failed
- 关于HTML的基础知识的介绍
- 查看docker容器占用的ip
- 若依ruoyi——手把手教你制作自己的管理系统【三、代码生成】
- 华为帮助泰国生活类应用Wongnai和Line Man解决精准定位及跟踪能力痛点,突破商业发展瓶颈
- IDE解决算法4中环境配置问题algs.jar