问题描述
- java 操作 jxl 或者 poi设置货币格式
-
我想在excel中显示货币格式为CNY 1,234.00,试过很多办法,总是不行
java 操作 jxl设置货币格式不正确
jxl.write.NumberFormat nf = new jxl.write.NumberFormat("[$USD] #,##0.00;[$USD] -#,##0.00");
这种办法不行
java 操作 poi设置也不行
short t = HSSFDataFormat.getBuiltinFormat("[$USD] #,##0.00;[$USD] -#,##0.00");
currencyStyle.setDataFormat(t);
这时 t返回-1.
忘有做过的朋友帮忙,金币没了,没法悬赏
解决方案
java设置Excel单元格格式 POI
java poi 设置数据格式
Java POI 如何操作word 格式(基础篇)
解决方案二:
没有jxl的源码,不知道numberformat支持这样输出不。换了一种方法,使用java自己的格式化输出功能将数字格式化为字符串输出到jxl中,核心代码如下;
java.text.NumberFormat numForm = java.text.NumberFormat
.getCurrencyInstance(Locale.US);
DecimalFormat df = (DecimalFormat) numForm;
df.applyPattern("u00A4#,###.00");
String str = df.format(7222280.123);
sheet.addCell(new Label(2, 0, str));
格式化后str为:
$7,222,280.12
时间: 2024-09-14 18:54:35