본문 바로가기
공돌이 작업실/하루 1커밋

Integer.valueOf() 에러가 난다. (feat.범인은 BOM)

by 미젤 2019. 7. 16.

다들 자바에서 자주 형변환을 할 것이다.

보통 Integer.valueOf() 에서 오류가 난다면 공백이 있거나, 숫자가 아닌 문자가 박혀있거나 정도다.

 

근데 나는 아무리 봐도 정수타입의 숫자인데 java.lang.NumberFormatException 이 나고있었다

 

 

 

 

디용. 뭐지 싶어서 걍 아예 스트링을 하나 더 만들어서 (String c ) 해봤더니 당연히 된다.

그래 "1821"은 이상할게 없다.

근데 저 result 변수에 담긴 "1821"은 숫자 포멧이 아니라고 자꾸 빼액 거린다.

 

 

 

왤까 왤까..

한참 씨름하면서 만지작 거리다가

 

???!!?!??!

차이점 발견!

눈에는 안보이는 \uFEFF 라는게 들어있었는데

이게 뭔고 하니, 파일이 UTF-8이라는것을 나타내기 위하여 BOM(Byte Order Mark)를 파일의 가장 앞부분에 추가하는 것!

간단하게 저것만 지워주니 아주 잘 된다. 홍홍홍..

댓글