이 오류는 아마도 다른 시스템 로캘로 인해 발생합니다. 소수점 구분 기호로 DOT를 사용합니다.float를 구문 분석하는 동안 NumberFormatException
응용 프로그램이 시작될 때 기본 로케일을 설정하려고했지만 동일한 예외가 발생합니다.
Locale.setDefault(Locale.US);
스택 트레이스는 : 코드가 Float.parseFloat
을 사용하고 같은
Caused by: java.lang.NumberFormatException: For input string: "6,2" at
sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2043) at
sun.misc.FloatingDecimal.parseFloat(FloatingDecimal.java:122) at
java.lang.Float.parseFloat(Float.java:451)
'내가 소수점 separator' ....로 DOT를 사용'는 NumberFormatException : 입력 문자열 : "6,2"'. 뭔가 소리가 나지 않습니다. – SomeJavaGuy
나는 미국이 도트를 사용한다고 확신한다. –
도트 대신 쉼표 (예 : 독일어)를 사용하는 로케일을 설정해야한다. 그러나 기본 로케일 (모든 종류의 효과가 적용됩니다)을 설정하는 것보다 NumberFormatter 인스턴스에 설정하는 것이 좋습니다. – Thilo