본문 바로가기
[ Design ]/Flash

FileReference 메소드와 이벤트 처리

by 관이119 2012. 9. 13.
mask93님의 블로그 | 죽도리
http://blog.naver.com/mask93/20019029297

FileReference.browse ([typelist:Array]) : Boolean

업로드할 로컬 파일을 선택할 수 있는 파일 탐색 대화 상자를 표시합니다.

다음은 대화상자에서 파일타입에 나오는 형식을 지정해준다.

var allTypes:Array = new Array();
var imageTypes:Object = new Object();
imageTypes.description = "Images (*.jpg, *.jpeg, *.gif, *.png)";
imageTypes.extension = "*.jpg; *.jpeg; *.gif; *.png";
allTypes.push(imageTypes);

var textTypes:Object = new Object();
textTypes.description = "Text Files (*.txt, *.rtf)";
textTypes.extension = "*.txt;*.rtf";
allTypes.push(textTypes);

var fileRef:FileReference = new FileReference();
fileRef.addListener(listener);
fileRef.browse(allTypes);

FileReference.download (url:String, [defaultFileName:String]) : Boolean

원격 서버에서 파일을 다운로드할 수 있는 대화 상자를 표시합니다.

url:String - 로컬 컴퓨터로 다운로드할 파일의 URL입니다. 서버 스크립트에서 구문 분석할 매개 변수를 URL에 첨부하면 download() 호출을 사용하여 데이터를 서버에 보낼 수 있습니다. 예를 들면 다음과 같습니다. http://www.myserver.com/picture.jpg?userID=hello

var fileRef:FileReference = new FileReference();
fileRef.addListener(listener);
var url:String = "http://www.macromedia.com/platform/whitepapers/platform_overview.pdf";
if(!fileRef.download(url, "FlashPlatform.pdf")) {
trace("dialog box failed to open.");
}

FileReference.upload (url:String) : Boolean
사용자가 선택한 파일을 원격 서버로 업로드하는 작업을 시작합니다. 이 메서드를 호출하려면 먼저 FileReference.browse() 또는 FileReferenceList.browse()를 호출해야 합니다.

listener.onSelect = function(file:FileReference):Void {
trace("onSelect: " + file.name);
if(!file.upload("http://www.yourdomain.com/yourUploadHandlerScript.cfm")) {
trace("Upload dialog failed to open.");
}
}

FileReference.onSelect 이벤트 리스너

파일 탐색 대화 상자에서 업로드 또는 다운로드할 파일을 선택할 때 호출됩니다. FileReference.brows () 혹은 FileReference.download () 메소드를 호출하면 이 대화상자가 표시됩니다.

var listener:Object = new Object();
listener.onSelect = function(file:FileReference):Void {
trace("onSelect: " + file.name);
if(!file.upload("http://www.yourdomain.com/yourUploadHandlerScript.cfm")) {
trace("Upload dialog failed to open.");
}
}

var fileRef:FileReference = new FileReference();
fileRef.addListener(listener);
fileRef.browse();

FileReference.onCancel 이벤트 리스너
파일 탐색 대화 상자를 닫으면 호출됩니다.
FileReference.onOpen 이벤트 리스너
업로드 또는 다운로드 작업 시작 시 호출됩니다.
FileReference.onProgress 이벤트 리스너
업로드 혹은 다운로드중에 계속 호출됩니다.
listener.onProgress = function (file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
trace("onProgress: " + file.name + " with bytesLoaded: " + bytesLoaded + " bytesTotal: " + bytesTotal);
}
FileReference.onComplete 이벤트 리스너
업로드 또는 다운로드 작업 완료 시 호출됩니다
FileReference.onHTTPError 이벤트 리스너
HTTP 오류로 인한 업로드 실패 시 호출됩니다.
FileReference.onIOError 이벤트 리스너
입력/출력 오류 발생 시 호출됩니다.
FileReference.onSecurityError 이벤트 리스너
보안 오류로 인한 업로드 또는 다운로드 실패 시 호출됩니다.

속성요약

creationDate:Date - 로컬 디스크의 파일을 만든 날짜입니다.

creator:String - 파일의 Macintosh 작성자 유형입니다.

modificationDate:Date - 로컬 디스크 파일의 가장 최근 수정 날짜입니다.

name:String - 로컬 디스크에 있는 파일의 이름입니다.

size:Number - 바이트 단위로 표시한 로컬 디스크 파일의 크기입니다.

type:String - 파일 유형입니다.

댓글