Преобразование строки в BigDecimal - PullRequest
1 голос
/ 30 августа 2011

Мы работаем с поставщиком, который отправляет нам различные XML-сообщения, которые нам нужно обработать.Для таких значений, как цена, иногда нам присылают номер в этом формате - 123,45. Когда мы запускаем код BigDecimal bd = new BigDecimal("123.45");,, он отлично работает

К сожалению, иногда нам отправляют номер в этом формате - 123,45мы запускаем код BigDecimal bd = new BigDecimal("123,45");, мы получаем NumberFormatException

Кто-нибудь знает об API, который может принимать строку, содержащую.или, и может преобразовать его в BigDecimal, или нам нужно будет сначала заменить строку и преобразовать все экземпляры, в.?

Спасибо

Ответы [ 2 ]

2 голосов
/ 30 августа 2011

Посмотрите на NumberFormat class.

1 голос
/ 30 августа 2011

Да, ваш второй пункт достаточно применим. Вам не предоставляется такая функция, которая преобразует число (фактически оно становится строкой, когда с ним используется ','), которое на самом деле не является числом. Принимая во внимание, что в поплавке разрешены только периоды.

...