Вам нужно будет установить язык на вашем DecimalFormat
.Вы можете сделать это, используя метод NumberFormat.getInstance(Locale locale)
.В верхней части документации для DecimalFormat
он явно объясняет, как использовать NumberFormat для получения десятичного формата с языковым стандартом.
РЕДАКТИРОВАТЬ: Как Стивен заявил в комментариях, это только половинарешения, другая половина должна использовать объект DecimalFormat
, чтобы разобрать строку в число.Так что код будет выглядеть так:
Locale decimalFormatLocale = YOUR_LOCALE_HERE;
DecimalFormat decimalFormatter = NumberFormat.getInstance(decimalFormatLocale);
double formattedNumber = decimalFormatter.parse(text, new ParsePosition(0)); //the position here should be the position in the String variable text that the number starts.