我们与供应商合作,向我们发送我们需要处理的各种不同的XML消息。
对于价格等价值,有时他们会以这种格式向我们发送号码 - 123.45
当我们运行代码BigDecimal bd = new BigDecimal("123.45");,
时,它可以正常运行
不幸的是,他们有时会以这种格式向我们发送号码 - 123,45
当我们运行代码BigDecimal bd = new BigDecimal("123,45");,
时,我们得到一个NumberFormatException
有没有人知道可以接受包含a的字符串的API。或者a,并且可以将它转换为BigDecimal,或者我们是否需要首先执行String替换并将所有实例转换为。?
由于
答案 0 :(得分:2)
查看NumberFormat课程。
答案 1 :(得分:1)
是的,你的第二点是合理可用的。你没有提供这样一个函数来转换一个数字(实际上它变成了一个字符串,当','与它一起使用时)实际上并不是一个数字。而在浮动中只允许一段时间。