보통 AS3에서 외부 데이터를 로드하기 위해서 URLLoader를 많이 사용합니다. 그런데 플래시의 인코딩 설정과 로드할 XML 또는 텍스트 파일의 인코딩 설정이 다른 경우에 2바이트 언어의 문자가 깨져서 들어오죠. 그래서 System.useCodePage 설정을 바꿔주거나, 텍스트 파일의 인코딩을 변경하거나 둘 중 하나를 해 주어야 합니다. 뭐 좀 귀찮지만, 여기까진 문제가 없죠.
그런데, 만약, 서로 다른 인코딩의 텍스트 파일 2개 이상을 동시에 로드해야 하는 경우라면 OTL 이죠. 이럴 때 XMLLoader를 사용하면 문제가 말끔히 사라집니다. ^^
상황 1
플래시 EUC-KR —– 텍스트 UTF-8
XMLLoader.load(UR [,"utf-8"]);==> 한글 정상 표시
URLLoader.load(UR) ==> 한글 깨짐
(UR은 URLRequest 객체)
상황2
플래시 UTF-8 —– 텍스트 EUC-KR
XMLLoader.load(UR, “euc-kr”) ==> 한글 정상 표시
URLLoader.load(UR) ==> 한글 깨짐
상황3
플래시 UTF-8 —– 텍스트1 UTF-8, 텍스트2 EUC-KR
XMLLoader.load(UR1 [, "utf-8"]) ==> 한글 정상 표시
XMLLoader.load(UR2, “euc-kr”) ==> 한글 정상 표시
URLLoader.load(UR1) ==> 한글 정상 표시
URLLoader.load(UR2) ==> 한글 깨짐
XMLLoader는 내부적으로 URLStream을 사용하는 것으로, URLLoader 대신 URLStream 을 사용하여도 같은 효과를 얻을 수 있습니다.
참고 URL: http://hangunsworld.com/blog/259