Вы можете использовать DecimalFormat
для анализа и форматирования десятичных чисел.
Запятые есть для тысяч разделителей. Вот простой пример, который намеренно анализирует BigDecimal
, а не float
или double
- двоичная плавающая точка не подходит для валютных значений.
import java.math.*;
import java.text.*;
public class Test {
public static void main(String[] args) throws Exception {
DecimalFormat format = new DecimalFormat();
format.setParseBigDecimal(true);
BigDecimal value = (BigDecimal) format.parse("1,234.56");
System.out.println(value);
}
}
Теперь это просто использует языковой стандарт по умолчанию для таких вещей, как разделитель тысяч и десятичный разделитель - вы можете указать конкретный языковой стандарт, если вы знаете, что будет использоваться для файла, который необходимо проанализировать.