티스토리 뷰

private function createWindow():void{
                var file:File = File.desktopDirectory;
                var arr:Array = new Array(new FileFilter("*", "*.*"));
                file.browseForOpenMultiple("오픈위치선택", arr);
                file.addEventListener(FileListEvent.SELECT_MULTIPLE, complete);
                file.addEventListener(Event.CANCEL, cancel);
               
               
               
            }
           
            private function complete(evt:FileListEvent):void{
                var file:File = evt.files[0] as File;
                trace("common : " + file.nativePath);
               
                file.canonicalize();
                trace("canonicalize : " + file.nativePath);
            }

디렉토리 이름이 Document ~1처럼 약어 또는 대소문자 확인, 그리고 심볼릭 링크가 걸린 디렉토리 또는 파일의 실제 올바른 경로를 알아올때 유용하다.

위 예제에서 C:\Document ~1\jQ.js 이라는 파일이 있다고 하자
(파일을 선택하지 말고 직접 타이핑을 쳐서 해보면 차이를 더 잘 알수 있다.)
jq.js 라고 타이핑 쳐서 셀렉트 하면,

결과값은

common : C:\Document ~1\jq.js => 보이는데로 출력
canonicalize : C:\Document and Setting\jQ.js => 본래 경로 출력

이렇게 나온다.

    cf)
canonicalize()는 생성을 목적으로 있지도 않은 디렉토리 또는 파일을 미리 File객체로 정의할수 있는데,
이때는 해당 경로에 있는 디렉토리 또는 파일의 경로만 올바르게 표시한다.
C:\Document ~1\jQ.js 에서 jQ.js는 없다고 할때 jq.js를 선택하면
C:\Document and Setting\jq.js 
이렇게 존재하는 것만 바로 잡는다.

댓글
댓글쓰기 폼
공지사항
Total
1,760,275
Today
1
Yesterday
23
링크
«   2021/12   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
글 보관함