플래시/플렉스[Flash/Flex] System.useCodePage 대신 이렇게.. by Juelria 2009. 1. 22. 728x90 반응형 SMALL System.useCodePage = true; 많이들 쓰시나요? 요즘은 UTF-8이 대세여서 그런지 별로 쓸 일이 없습니다..그런데 이번에 RSS 리더를 개발하던 중 문제가 생겼습니다.. RSS 리더에서 불러들인 페이지들의 경우 UTF-8이 아닌 것도 있다는 거죠..네이버 카페가 대표적입니다..EUC-KR을 쓰죠.. EUC-KR의 경우 System.useCodePage = true;를 사용하면 해결됩니다.. 그런데 지금 만드는건 RSS리더잖아요..즉, UTF-8도 있고 EUC-KR도 있습니다..다른 인코딩도 있겠죠.. System.useCodePage를 true, false로 변경하면서 해당하는 웹 페이지를 불러오면 될까요? 물론 어느정도 딜레이를 준다면 가능할 듯 합니다..하지만 그렇게 구현하는건 왠지 아닌거 같죠? 속도가 빨라야 하니까요.. 그래서 위와 같은 함수를 만들게 되었습니다.. BOM만으로는 UTF-8을 정확하게 잡을 수가 없습니다..없는 경우도 있으니까요.. 처음 코드는 위와 달리 조금 더 복잡했습니다..encodeURI()도 사용했고 바이트 어레이를 좀 더 복잡하게 다뤘죠..몇번의 테스트 끝에 위의 코드가 나왔는데요..아래 예제에 적용해 봤습니다.. 아직 UTF-8, EUC-KR, UCS2 Big/Little Endian만 테스트를 했을 뿐입니다..즉, 앞으로 다른 경우가 생길 경우 업데이트를 해야 한다는 뜻이죠.. 찾게 되면 업데이트 하겠습니다.. * 아래 예제에서는 텍스트를 뿌려줄 때 부하를 막기 위해 800자 까지만 보이도록 했습니다.. ** 페이지를 불러올 때 인코딩 정보를 정확하게 알 수 있는 좋은 방법이 있다면 알려주세요^^ 728x90 반응형 LIST https://www.seoulfilmacademy.com/광고PBL 문화예술경영 아카데미 문화예술경영 청년창업 지원프로젝트기반학습 문화예술경영, NCS 문화예술 경영자과정, 콘텐츠 청년창업 지원. 문화예술분야 PBL & NCS 경영아카데미, 청년 경영자로 성장하는 실무아카데미https://www.sigmaaldrich.com/KR/ko광고연구실 필수템 다 모였다!고품질 시약만 모았다, 씨그마 알드리치만의 자부심 좋아요공감공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기주엘리아 블로그 관련글 플래시 플레이어 보급률 encodeURI()에서 인코딩 되지 않는 문자들의 정규식 Adobe Stratus www.searchme.com 주엘리아 블로그주엘리아의 블로그입니다.구독하기