파일 작업Adobe AIR 1.0 이상 AIR 파일 API를 사용하면 기본적인 파일 상호 작용 기능을 응용 프로그램에 추가할 수 있습니다. 예를 들어 파일 읽기, 쓰기, 복사, 삭제 등을 수행할 수 있습니다. 응용 프로그램에서 로컬 파일 시스템에 액세스할 수 있으므로 아직 이렇게 하지 않은 경우 AIR 보안을 참조합니다. 참고: 파일 유형을 AIR 응용 프로그램과 연결할 수 있습니다. 그러면 해당 파일을 두 번 클릭하여 응용 프로그램을 열 수 있습니다. 자세한 내용은 파일 연결 관리를 참조하십시오.
파일 정보 가져오기File 클래스에는 File 객체가 가리키는 파일 또는 디렉토리에 대한 정보를 제공하는 다음과 같은 속성이 포함되어 있습니다.
이러한 속성에 대한 자세한 내용은 Adobe Flash 플랫폼용 Adobe ActionScript 3.0 참조 설명서에서 File 클래스 항목을 참조하십시오. 파일 복사 및 이동File 클래스에는 파일 또는 디렉토리를 복사하기 위한 copyTo() 및 copyToAsync()라는 두 개의 메서드가 포함되어 있습니다. File 클래스에는 파일 또는 디렉토리를 이동하기 위한 moveTo() 및 moveToAsync()라는 두 개의 메서드가 포함되어 있습니다. copyTo() 및 moveTo() 메서드는 동기식으로 작동하고 copyToAsync() 및 moveToAsync() 메서드는 비동기적으로 작동합니다. 자세한 내용은 AIR 파일 기본 사항을 참조하십시오. 파일을 복사 또는 이동하려면 두 개의 File 객체를 설정합니다. 한 객체는 복사 또는 이동할 파일을 가리키고 복사 또는 이동 메서드를 호출하는 객체이며 다른 객체는 대상(결과) 경로를 가리킵니다. 다음 예제에서는 사용자 문서 디렉토리의 AIR Test 하위 디렉토리에 있는 test.txt 파일을 같은 디렉토리에 copy.txt라는 파일로 복사합니다. var original:File = File.documentsDirectory.resolvePath("AIR Test/test.txt"); var newFile:File = File.resolvePath("AIR Test/copy.txt"); original.copyTo(newFile, true); 이 예제에서는 copyTo() 메서드의 overwrite 매개 변수(두 번째 매개 변수)를 true로 설정합니다. overwrite 매개 변수를 true로 설정하면 기존 대상 파일을 덮어쓰게 됩니다. 이 매개 변수는 선택적입니다. 이 매개 변수를 false(기본값)로 설정하면 이 작업은 대상 파일이 있는 경우 IOErrorEvent 이벤트를 전달하며 파일이 복사되지 않습니다. “비동기” 버전의 복사 및 이동 메서드는 비동기적으로 작동합니다. 다음 코드에서와 같이 addEventListener() 메서드를 사용하면 작업의 완료 또는 오류 조건을 모니터링할 수 있습니다. var original = File.documentsDirectory; original = original.resolvePath("AIR Test/test.txt"); var destination:File = File.documentsDirectory; destination = destination.resolvePath("AIR Test 2/copy.txt"); original.addEventListener(Event.COMPLETE, fileMoveCompleteHandler); original.addEventListener(IOErrorEvent.IO_ERROR, fileMoveIOErrorEventHandler); original.moveToAsync(destination); function fileMoveCompleteHandler(event:Event):void { trace(event.target); // [object File] } function fileMoveIOErrorEventHandler(event:IOErrorEvent):void { trace("I/O Error."); } 또한 File 클래스에는 파일 또는 디렉토리를 시스템 휴지통으로 이동하는 File.moveToTrash() 및 File.moveToTrashAsync() 메서드가 포함되어 있습니다. 파일 삭제File 클래스에는 deleteFile() 메서드와 deleteFileAsync() 메서드가 포함되어 있습니다. 이러한 메서드는 첫 번째는 동기식으로 작동하고 두 번째는 비동기적으로 작동하여 파일을 삭제합니다. 자세한 내용은 AIR 파일 기본 사항을 참조하십시오. 예를 들어 다음 코드에서는 사용자 문서 디렉토리에 있는 text.txt 파일을 동기적으로 삭제합니다. var file:File = File.documentsDirectory.resolvePath("test.txt"); file.deleteFile(); 다음 코드에서는 사용자 문서 디렉토리의 text.txt 파일을 비동기적으로 삭제합니다. var file:File = File.documentsDirectory.resolvePath("test.txt"); file.addEventListener(Event.COMPLETE, completeHandler) file.deleteFileAsync(); function completeHandler(event:Event):void { trace("Deleted.") } 또한 시스템 휴지통으로 파일 또는 디렉토리를 이동하는 데 사용할 수 있는 moveToTrash() 및 moveToTrashAsync 메서드도 포함되어 있습니다. 자세한 내용은 휴지통으로 파일 이동을 참조하십시오. 휴지통으로 파일 이동File 클래스에는 moveToTrash() 메서드 및 moveToTrashAsync() 메서드가 포함되어 있습니다. 이러한 메서드는 첫 번째는 동기식으로 작동하고 두 번째는 비동기적으로 작동하여 파일 또는 디렉토리를 시스템 휴지통으로 보냅니다. 자세한 내용은 AIR 파일 기본 사항을 참조하십시오. 예를 들어 다음 코드에서는 사용자 문서 디렉토리에 있는 text.txt 파일을 시스템 휴지통으로 동기적으로 이동합니다. var file:File = File.documentsDirectory.resolvePath("test.txt"); file.moveToTrash(); 참고: 복구 가능한 휴지통 폴더의 개념을 지원하지 않는 운영 체제에서는 파일이 즉시 제거됩니다.
임시 파일 만들기File 클래스에는 다음 예제와 같이 시스템의 임시 디렉토리 폴더에 파일을 만드는 createTempFile() 메서드가 포함되어 있습니다. var temp:File = File.createTempFile(); createTempFile() 메서드는 자동으로 고유한 임시 디렉토리를 만들어 고유한 새 위치를 확인하는 작업을 저장합니다. 임시 파일에는 응용 프로그램의 세션 동안 사용되는 정보를 일시적으로 저장할 수 있습니다. 시스템 임시 디렉토리에 고유한 새 임시 디렉토리를 만들기 위한 createTempDirectory() 메서드도 있습니다. 임시 파일은 모든 장치에서 자동으로 삭제되지 않으므로 응용 프로그램을 닫기 전에 삭제하는 것이 좋습니다. |
|