java.util.Locale 주의사항
JAVA / 2011. 12. 27. 17:04
사용 언어별 리소스 번들을 사용하기 위해서 java.util.Locale 을 이용하곤 합니다. 하지만 무턱대고 쓰다가는 예상치 못한 결과가 나올 수 있습니다.
위의 코드의 결과는 아래와 같습니다.
ko
ko_kr
ko_KR
ko_kr
ko_KR
1번과 3번은 크게 문제가 없는데, 2번과 같은 경우는 문제가 발생합니다.
bundle.properties 를 사용한다면, 1번과 3번은 각각 "bundle_ko.propertie", "bundle_ko_KR.properties" 를 로드하게 되는데, 2번과 같은 경우 의도한 결과는 "bundle_ko_KR.properties" 인데, 전혀 다른 결과가 나타나게 됩니다.
운이 좋게도 OS 언어가 "ko_KR" 이라서 인식하지 못하는 "ko_kr" 이 나와도 "ko_KR" 로 인식해서 몰랐는데, OS 언어가 "en_US" 인 환경에서 의도하지 않은 결과가 나오지 않아 확인한 결과 알게되었습니다.
뉴_뉴...