devmae
개발자 향기
devmae
전체 방문자
오늘
어제
  • 전부 감상 (280)
    • Unity (52)
      • memo (37)
      • R&D (15)
    • 모바일 (32)
      • iOS (6)
      • Android (25)
    • 개발자 모드 (41)
      • 개발자처럼 파고들기 (28)
      • 한가해서 책읽는거 아님 (10)
      • 영상 요약 (3)
    • Languages (40)
      • C++ (23)
      • MFC (8)
      • Java (4)
      • javascript (5)
    • Flash (108)
      • tip (29)
      • tech (4)
      • as2.0 (1)
      • as3isolib (3)
      • flartoolkit (2)
      • 이미지 편집기 (2)
      • papervision3d (12)
      • scale form (2)
      • Flash Builder (12)
      • air (5)
      • as3.0 (20)
      • flash player (9)
      • 개념잡기 (6)
      • source (1)
    • +,-,×,÷ (3)
      • 수학 뽀개기 (3)

블로그 메뉴

  • 홈
  • 방명록

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.
devmae

개발자 향기

Flash/tip

xml파일의 encoding이 euc-kr일 경우 쓰레기 문자열 붙는 오류

2010. 9. 16. 14:56

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에 따라서 동적으로 문자열을 변환하게 해주는 방법이 있다.

    'Flash/tip' 카테고리의 다른 글
    • IE9에서 Event.RESIZE시에 플래시 화면 깨짐 현상
    • 무손실 PNG
    • 플래시에서 html생성시 나만의 html로 생성하기
    • 파이어 폭스에서 자바스크립트 얼럿창 떴을 때 다운 해결 방법
    devmae
    devmae
    enjoy with me?

    티스토리툴바