xml파일을 플래시에서 사용할 경우,
xml파일의 encoding이 utf-8이면 그냥 로드하여 별 문제없이 사용할 수 있다.
encoding이 euc-kr일 경우, 플래시에서는 System.useCodePage = true; 를 하여 사용하여야 한다.
그렇지 않게 되면 한글이 깨지게 된다.
그런데 여기서 문제가 생긴다.
encoding="euc-kr" 이고, 태그 안에 속성을 사용할 경우,
예를 들어
<root>
<item id="1">
<item id="2">
</root>
이런식으로 속성이 들어가게 되면 이상한 문자열이 붙어서 온다.
즉, 플래시에서는
<root>
<item id="1">
<item id="2">
</root>
DJskdjaeD
이런식으로 이상한 문자열이 따라오게 된다.
이는 네트웍을 타고 오면서 가비지가 붙는 것이다.
이것은 플래시에서 System.useCodePage를 false로 두면 가비지가 붙지 않고 오게 되는데,
그렇게 되면 위에 언급한 것과 마찬가지로 한글이 깨지게 된다.
해결방법은, URLoader.data를 xml로 형변환하기 전 문자열의 상태에서 루트태그 뒤쪽을 잘라낸 후
xml로 변환하는 방법이 있다.
또다른 방법으로는 encoding에 따라서 동적으로 문자열을 변환하게 해주는 방법이 있다.
이는 네트웍을 타고 오면서 가비지가 붙는 것이다.
이것은 플래시에서 System.useCodePage를 false로 두면 가비지가 붙지 않고 오게 되는데,
그렇게 되면 위에 언급한 것과 마찬가지로 한글이 깨지게 된다.
해결방법은, URLoader.data를 xml로 형변환하기 전 문자열의 상태에서 루트태그 뒤쪽을 잘라낸 후
xml로 변환하는 방법이 있다.
또다른 방법으로는 encoding에 따라서 동적으로 문자열을 변환하게 해주는 방법이 있다.