NumberFormat генерирует ParseException, когда я пытаюсь проанализировать "10,10 €".
@Test
public void get_currency_from_text() throws Exception {
String moneyAsString = "10,10 €";
//Do not use double for monetary values
Double moneyAsDouble = 10.10;
NumberFormat formatter = NumberFormat.getCurrencyInstance(Locale.GERMANY);
Double parsedMoney = formatter.parse(moneyAsString).doubleValue();
assertEquals(moneyAsDouble, parsedMoney);
}
Это то, что я выбрасываю при запуске теста
java.text.ParseException: Unparseable number: "10,10 €"
Работает нормальнохотя всякий раз, когда я делаю это:
@Test
public void get_currency_from_text() throws Exception {
Double moneyAsDouble = 10.10;
NumberFormat formatter = NumberFormat.getCurrencyInstance(Locale.GERMANY);
String moneyAsString = formatter.format(moneyAsDouble);
Double parsedMoney = formatter.parse(moneyAsString).doubleValue();
System.out.println(moneyAsString);
//10,10 €
assertEquals(moneyAsDouble, parsedMoney);
}
Я подозреваю, что это как-то связано с пространством, но я все еще не знаю, как это исправить, есть идеи?