TXT 파일에 저장된 변수 로드해서 사용하기
- Posted at 2008/08/13 14:38
ActionScript 3.0에서 변수 정보가 저장된 TXT 파일을 로드해서 해당 변수를 사용하기 위해서는 다음과 같이 URLLoader의 dataFormat을 VARIABLES로 지정한 후 로드해야 정상적으로 변수를 참조할 수 있습니다. 그렇지 않으면 로드된 TXT 파일의 모든 내용을 하나의 String 데이터로 인식하게됩니다.
-
System.useCodePage = true;
-
-
var loader:URLLoader = new URLLoader();
-
var request:URLRequest = new URLRequest("sample.txt");
-
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
-
loader.addEventListener(Event.COMPLETE, completeHandler);
-
loader.load(request);
-
-
function completeHandler(event:Event):void {
-
var vars:URLVariables = event.target.data;
-
trace(vars.path);
-
}
여기서 sample.txt 파일에는 다음의 내용이 들어있습니다.
만약 여러개의 변수를 사용하고 싶을 때는 & 구분자를 이용해서 추가할 수 있습니다.
주의할 점은 첫 변수명 앞에는 & 구분자를 사용하지 않는다는 점과 & 구분자를 사용할 경우 & 구분자 뒤에는 반드시 변수명이 있어야 한다는 점입니다. 예전에는 TXT 파일을 로드했을 때 불필요한 공백을 제거하기 위해 & 구분자를 변수 데이터 앞, 뒤에 붙여서 사용했었습니다.
이렇게 하면 다음과 같은 오류가 발생합니다.
at Error$/throwError()
at flash.net::URLVariables/decode()
at flash.net::URLVariables()
at flash.net::URLLoader/onComplete()
Comments List
-
xp에서부터는 txt를 저장할 때 utf-8로 인코딩해서 저장할 수 있는데 그럼 System.useCodePage = true를 하지 않아도 되지 않을까요? useCodePage를 하면 리눅스나 MacOS에서는 제대로 표시가 않아서 불편할 것 같아요.
-
리플 달고 나서 스스로 답을 찾았네요.
System.useCodePage = true
를 해놓고 불러오는 파일을 utf-8로 하면 되겠군요.
아아 유니코드... 유니코드... -
유니코드때문에 저도 많이 고생을 했었습니다. 특히나 한글 데이터 연동할 때 아무 생각없이 우리 나라에서만 잘 보이면 되는 줄 알고 만들었다가 뒷통수 때린적이 한번이 아니었네요. ㅎㅎ;
-
-
심한수교수님이 물어봐서 계속 찾았는데 답이 여기있었네요 ㅋㅋ
젤앞에 & 이놈 때문이었구나 ㅠㅠ-
나도 몰랐다가 라자로스가 물어봐서 살펴 봤더니 이렇게 사용해야 하는 것 같아. 정말 공부할게 너무 많아.
-
-
모야썅.내가 알려준거자나!
여튼.시스템코드페이지는 만약 한글이나 일본어 등으로 페이지코딩 정의해줬으면 false 로 해야해.
asp 든 txt 든 유니코드로 저장하는게 좋겠지?-
그래 잘했다. 후후.
-










