在Excel中本地化数值

BigDecimal myNumber = new BigDecimal(1234.56); NumberFormat instance = NumberFormat.getInstance(Locale.GERMAN); String localizedNumber = instance.format(myNumber); System.out.print("\nformatting " + localizedNumber); o/p ->1.234,56 

直到这里代码工作正常,但下面的行给予NumberFormatterexception,因为给定的string包含逗号。

BigDecimal bigDecimal = new BigDecimal(localizedNumber);

我想要数字值本地化,但我不能返回string作为string显示数字在Excel中显示下面的错误在这个单元格中的数字格式化为文本或前面有一个撇号

有什么办法可以以本地化的格式返回数值(BigDecimal / Integer / BigInteger等)所以,我不会在Excel中得到上述错误,我可以对Excel数据执行过滤操作。

我也尝试过新的BigDecimalType()。valueToString(value,locale); 和新的BigDecimalType()。stringToValue(s,locale); dynamic碧玉报告api。

很高兴回答这个只问我的问题,而且很惊讶没有人回答这个问题。 其实我们不需要在excel导出中进行数字本地化,因为它是由我们的操作系统设置自动完成的。

转到“区域和语言” – >格式 – >select语言/国家名称 – >申请并检查您的英文早期生成的Excel。

您将会看到当前所选国家的号码格式的数字。 🙂