是否有一种格式来设置千位分隔符并使用 Apache poi 设置两位小数?
Posted
技术标签:
【中文标题】是否有一种格式来设置千位分隔符并使用 Apache poi 设置两位小数?【英文标题】:Is there a format to set thousand separator and also set two decimal places using Apache poi? 【发布时间】:2020-09-21 12:46:18 【问题描述】:我可以像这样设置千位运算符:
cell.getCellStyle().setDataFormat(HSSFDataFormat.getBuiltinFormat("#,#00"));
或者设置两位小数:
cell.getCellStyle().setDataFormat(HSSFDataFormat.getBuiltinFormat("0.00"));
是否可以同时设置两者?
【问题讨论】:
cell.getCellStyle().setDataFormat(HSSFDataFormat.getBuiltinFormat("#,#00.00")); poi.apache.org/apidocs/dev/org/apache/poi/ss/usermodel/… 你试过"#.##0,00"
吗?我认为这取决于语言环境......正如@Fullslack.dev 评论的那样可能是相反的。
@deHaar #,##0.00
这对我有用。不过谢谢
@NemJov 好...只是要记住的一件事:在我的德文版 Excel 中,我发布的是有效的(因为千位分隔符是一个点而不是逗号,而小数位在逗号后面)。所以Excel 的语言环境 很重要。
【参考方案1】:
这对我有用:
cell.getCellStyle().setDataFormat(HSSFDataFormat.getBuiltinFormat("#,##0.00"));
根据@Fullslack.dev 评论https://poi.apache.org/apidocs/dev/org/apache/poi/ss/usermodel/BuiltinFormats.html
找到解决方案
【讨论】:
以上是关于是否有一种格式来设置千位分隔符并使用 Apache poi 设置两位小数?的主要内容,如果未能解决你的问题,请参考以下文章
使用千位逗号分隔符格式化 DataGridViewColumn
PHP字符串函数 number_format(以千位分隔符方式格式化一个数字)