java导出excel数字格式_POI 导出excel带小数点的数字格式显示不对解决方法
最近看到了一个问题就是java导出excel中带小数点的数字显示不对, 比如我想在excel中第一行显示: 3,000.0 但是在excle中导出的格式总是不带小数点 3000(非文本格式),而且也不是以金融格式显示的。这时候我们的解决方法是要为单元格中的数字设置dataformat。代码如下 import java.io.FileOutputStream; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.hssf.usermodel.HSSFDataFormat; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; public class ExcelUtil { public void testWriteExcel() {
String excelPath = "d:/test.xls"; HSSFWorkbook workbook = null; try { // XSSFWorkbook used for .xslx (>= 2007), HSSWorkbook for 03 .xsl workbook = new HSSFWorkbook();// XSSFWorkbook();//WorkbookFactory.create(inputStream); } catch (Exception e) { System.out.println("创建Excel失败: "); e.printStackTrace(); } if (workbook != null) { Sheet sheet = workbook.createSheet("测试数据"); Row row0 = sheet.createRow(0); for (int i = 0; i < 6; i++) { double test = 3000.0; Cell cell = row0.createCell(i, Cell.CELL_TYPE_NUMERIC); CellStyle cellStyle = workbook.createCellStyle(); HSSFDataFormat df = workbook.createDataFormat(); //此处设置数据格式 cellStyle.setDataFormat(df.getFormat("#,#0.0")); //小数点后保留两位,可以写contentStyle.setDataFormat(df.getFormat("#,#0.00")); cell.setCellStyle(cellStyle); cell.setCellValue( test ); } try { FileOutputStream outputStream = new FileOutputStream(excelPath); workbook.write(outputStream); outputStream.flush(); outputStream.close(); } catch (Exception e) { System.out .println("写入Excel失败: "); e.printStackTrace(); } }
} public static void main(String[] args) { ExcelUtil eu = new ExcelUtil(); eu.testWriteExcel(); }
}
当没设置format的时候,光设置CELL_TYPE_NUMERIC只能让数字在excel中显示为数字类型(非文本类型,而不能保证它小数位和金融格式(每位一个逗号)。
所以如果要达到要求就必须要设置cell的dataformat如上代码所示。
CellStyle cellStyle = workbook.createCellStyle(); HSSFDataFormat df = workbook.createDataFormat(); //此处设置数据格式 cellStyle.setDataFormat(df.getFormat("#,#0.0")); //小数点后保留两位,可以写contentStyle.setDataFormat(df.getFormat("#,#0.00")); cell.setCellStyle(cellStyle);
这几行代码起了绝对的作用。最后结果如下图说是:
java导出excel数字格式_POI 导出excel带小数点的数字格式显示不对解决方法相关推荐
- POI 导出excel带小数点的数字格式显示不对解决方法
POI 导出excel带小数点的数字格式显示不对解决方法 参考文章: (1)POI 导出excel带小数点的数字格式显示不对解决方法 (2)https://www.cnblogs.com/firstd ...
- poi导入excel日期处理_POI处理Excel中各种日期格式问题
前不久写过一篇随笔<EXCEL解析之终极方法WorkbookFactory>,提到使用WorkbookFactory来处理Excel文件数据,最近发现一个问题就是这个办法不能很好的处理各种 ...
- 部分正则表达式匹配所有数字,包括带小数点的数字
用于匹配的正则表达式为 :([1-9]\d*\.?\d*)|(0\.\d*[1-9]) ( [1-9] :匹配1~9的数字: \d :匹配数字,包括0~9: * :紧跟在 \d 之后,表明可以匹配零个 ...
- java导出excel 边框不全_POI 导出Excel合并单元格后部分边框不显示
用户需要导出自定义表格,其中合并单元格样式遇到的问题,合并后只显示第一行第一列的边框,其他边框不显示,于是遍查百度,寻到一点思路 ①了解Excel绘制原理 ②了解绘制Excel顺序 ③绘制Excel单 ...
- setcellvalue 格式_POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】
实际开发过程中通常用到的就是从数据库导出EXCEL表格了,JXL可以这样做,其实POI也可以(关于JXL与POI的异同可访问我之前总结的文章),之前写过POI对七种文档(当然也包括EXCEL)的内容读 ...
- setcellvalue 格式_POI对Excel单元格的格式的设置参数
最近在做导出Excel的功能封装,遇到了几个问题: 单元格宽度问题 数据不是数字格式问题 格式化了之后显示的不是数字而是######的问题(其实是因为单元格宽度不够导致的无法显示格式化之后的内容) 下 ...
- php输出excel表格乱码和第一个0不显示的解决方法(详细)
而关于php的也有,但是大多都是用phpExcel导出的方法或者spreadsheet等类或者控件之类的导出方法,而我所在维护的系统却用很简单的方法,如下,网上很少有讲如何设置要导出数据的EXcel格 ...
- ur5机器人solidworks导出urdf(附带SW的y轴朝上和rviz零件散落的解决方法)
ur5的solidworks模型下载地址(免费下载):https://www.mfcad.com/tuzhi/800/738923.html y轴朝上的解决方法: 1.根据这个教程 https://b ...
- excel文件点击第一次打开是灰色第二次才能真正打开 解决方法
问题描述: excel文件点击第一次打开就是灰色的界面,下面还写着就绪,如下图.得再次打开一下excel文件才能真正打开. 试了下面两个方法: 1.点击excel 选项 --> 高级 --&g ...
最新文章
- 为 Visual Studio 安装数据库工具
- 三角网导线平差实例_导线测量平差实例
- Windows Server 2012 R2 安装完勒索病毒后出现的共享和DNS等问题
- 面试官:你不懂六大设计原则,回去等通知吧!
- android 相对布局_【学习】安卓212相对布局的练习含代码版
- Python代码—测试
- 中文乱码之springboot框架中两工程之间参数传递乱码
- Java基础笔记(2) 程序入口 关键字 标识符 常量 变量
- java容量_java中常用集合类的容量
- 蓝桥杯历届真题题目+解析+代码+答案(2013-2020)(JavaA、B、C组)(C++语言)(Python)
- 【PyCharm 使用指南】之汉化插件(官方提供)
- 编译 mobileTerminal
- 黑莓手机刷linux,黑莓老机型ROM刷机资源
- CCFCSP 201712-1 最小差值
- 阿里云无影云桌面怎么使用?用户名密码连接登录新手教程
- django商城项目之历史浏览记录
- IP地址屏蔽功能设计
- iOS相机、相册的访问权限
- 强化学习(RL)原理以及数学模型
- LZJ流体质量计算机价格,LZJ-ⅢC型流体质量计算机技巧.doc
热门文章
- 24点游戏c语言链表做法,解24点
- 如何在不重装系统的情况下处理流氓软件和木马病毒?
- SEO入门教程之名词解释
- MBA工商管理-管理类联考怎么复习?
- 围棋定式详解 v3.01 下载
- 架构师系列知识-整体框架
- 关于windows下安装wampserver服务器系统丢失msvcr100.dll及VCRUNTIME140.dll的解决办法
- 鸿蒙系统下矿山! 华为“矿鸿”重磅发布!
- 解决ubuntu下vi上下左右方向键出现字母,backspace键不能删除字符
- Win10无法登录微软账号错误代码0x80190001的解决方法