Я получаю исключение NumberFormatException при попытке проанализировать число, такое как «15,7». Это будет «15,7» в формате США или Великобритании. я попытался получить локаль с ПК и анализировать на основе этого, следующим образом:NumberFormatException для строки ввода: "15,7"
if (strCountry.equals("IT")) {
locale = java.util.Locale.ITALIAN;
} else {
locale = java.util.Locale.ENGLISH;
}
NumberFormat m_nf = NumberFormat.getInstance(locale);
m_nf.setMaximumFractionDigits(1);
лесозаготовок Я подтвердил, что система возвращает «IT» в стране. Синтаксический анализ затем попытался так:
Double nCount = new Double(m_nf.format(total_ff));
Однако это где исключение, из-за запятой используется в качестве десятичной точки. Я что-то пропустил? Благодаря!
Попробуйте посмотреть в к переменной с плавающей чисел. – MadeInDreams
@MadeInDreams Замените Double на Float? – petehallw
Это зависит от того, что вы пытаетесь с этим сделать. Но да, вы должны работать с плавающей. Чтобы увидеть, видит ли javascript значение, как это, вы всегда можете использовать typeof. Он вернет тип номера, который он интерпретирует как. – MadeInDreams