java使用POI导出Excel设置单元格格式为数值类型
最近做项目遇到的坑,百度了半天导出都为货币类型、自定义类型和常规类型,,,最后终于解决,在此记录一下
其中contextstyle.setDataFormat(df.getFormat("0_ "));要特别注意"0_ ",下划线后面有一个空格!!!,缺少空格则不会导出为数值类型。
注意空格!!!注意空格!!!注意空格!!!
/*** 设置Excel单元格为数值类型便于公式运算** @param workbook* @param contextstyle* @param cell* @param data*/public static void setNumberFormat(SXSSFWorkbook workbook, CellStyle contextstyle, SXSSFCell cell,Object data){boolean isNum = false;//data是否为数值型boolean isInteger=false;//data是否为整数boolean isPercent=false;//data是否为百分数if (data != null || "".equals(data)) {//判断data是否为数值型isNum = data.toString().matches("^(-?\\d+)(\\.\\d+)?$");//判断data是否为整数(小数部分是否为0)isInteger=data.toString().matches("^[-\\+]?[\\d]*$");//判断data是否为百分数(是否包含“%”)isPercent=data.toString().contains("%");}//如果单元格内容是数值类型,设置data的类型为数值类型if (isNum && !isPercent) {// 此处设置数据格式DataFormat df = workbook.createDataFormat();if (isInteger) {contextstyle.setDataFormat(df.getFormat("0_ "));//数据格式只显示整数}else{contextstyle.setDataFormat(df.getFormat("0.00_ "));//保留两位小数点}// 设置单元格格式cell.setCellStyle(contextstyle);// 设置单元格内容为double类型cell.setCellValue(Double.parseDouble(data.toString()));} else {if (data != null && !"".equals(data)) {cell.setCellStyle(contextstyle);// 设置单元格内容为字符型cell.setCellValue(data.toString());}}}
java使用POI导出Excel设置单元格格式为数值类型相关推荐
- NPOI读取Excel设置单元格格式为数值不生效问题
初学C#踩坑第一篇 NPOI读取Excel设置单元格格式为数值不生效问题 问题简介: C#使用NPOI写入Excel是修改单元格不能修改,生成后Excel需要打开后双击单元格才会改变格式,话不多说下面 ...
- PhpSpreadsheet数据导出Excel 设置单元格格式为文本
PhpOffice\PhpSpreadsheet数据导出Excel 的时候,设置单元格格式为文本,用NumberFormat::FORMAT_TEXT这个方法不起作用,长数字还是不显示,于是找了很久的 ...
- java导出excel表格设置行高,POI导出Excel设置单元格格式
使用Apache的POI相关API导出Excel设置单元格格式 栗子,一下各个代码之间的变量是通用的,要是在某个代码块中找不到某个变量,则可以向上找寻 准备工作 InputStream = templ ...
- POI导出Excel设置单元格背景色
POI导出Excel设置单元格背景色 导出Excel的时候,没有设置背景色,用2003版本的Excel工具打开会出现文档单元格背景自动填充黑色的情况,没有找到好的解决方法,就主动给他填充一种颜色,问题 ...
- java poi设置单元格格式为数值_java中导出excel设置单元格的样式为数字格式怎么设置_Java代码实现设置单元格格式...
java中导出excel设置单元格的样式为数字格式怎么设置 如果是使用poi,它会自动根据参数值设置单元格为恰当格式,只需传入数字类型参数值即可,比如 double value=....; cell. ...
- java poi设置单元格格式为数值_Excel 文本转数值的方法——我找的好苦啊
不明绝厉 在Excel中的单元格中输入数字时,如果在数字前加上一个半角单引号(')则该数字在单元格中的存储格式会自己转为"文本格式". 如果有一列(或一行)数字都是用这种方法输入的 ...
- java poi设置单元格格式为数值,Apache POI 如何读取Excel中数值类型单元格所规定的保留小数位?...
问题描述 java apache poi 包内是否有方法可以获取Excel数值类型单元格中保留的位数? 问题出现的环境背景及自己尝试过哪些方法 有这么一个场景: 需求:从Excel文件中读取数据,原样 ...
- java使用poi导出excel设置颜色问题
POI 设置单元格背景色 cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);//设置前景填充样式 cellStyle.setFillFo ...
- phpexcel 数字格式_php excel 设置单元格格式为文本格式
学习源头:https://www.cnblogs.com/php-linux/p/6179442.html 解决 PHPExcel 长数字串显示为科学计数 在excel中如果在一个默认的格中输入或复制 ...
最新文章
- Docker容器对CPU资源隔离的几种方式
- Ionic中自定义公共模块以及在自定义模块中使用ionic内置模块
- Linux - alias 定义的变量
- python模拟点击网页按钮_网页自动化开发(第一章)
- c# 蓝牙虚拟串口_蓝牙模块——基础知识介绍
- pc模式 华为mate30_号称“重构想象”的华为Mate30系列,到底有多颠覆?一睹为快...
- 我在斯坦福做科研的碎碎念
- 使用redis数据库的目的?
- 织梦dedecms模板--物流快递网站模板源码-带手机版数据同步
- 如何通过一个SDK轻松搞定人脸识别,拯救初入职场的程序猿
- oracle 临时表空间满了_精心总结--Oracle查询表空间的每日增长量和历史情况统计脚本...
- 动态ACL+自反ACL
- 物权法全文内容有哪些呢-广告外链_SEO优化的站外优化工作有哪些?
- day18 8.jdbc中设置事务隔离级别
- 前端工具Gulp的学习
- CleanWipe:无需密码彻底卸载Symantec(赛门铁克)
- 我的世界服务器附魔修改器,[娱乐|RPG]NshowEnchant —— 一个简单附魔插件[1.7.10-1.12.2]...
- Java .class文件是什么?
- docker中报错Error: Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirro
- python爬虫——30行代码爬取论坛数据
热门文章
- //解决警告You are running the esm-bundler build of vue-i18n. It is recommended to configure your bundler
- android启动Service和ForegroundService
- 火猴之探照灯效果动画实现(firemonkey)
- 抖音如何快速上热门,先来了解下BGM的重要性吧丨国仁网络资讯
- SEO优化之根据网址自动生成sitemap.xml文件
- Java函数式编程神器 VAVR(vavr - turns java™ upside down)
- 协程(coroutine)的原理与实现
- 常见HTTP状态码返回值大全
- 检验一个数据集是否是正太分布
- 加性logistic回归