빠른 시작: 파일 속성 가져오기(HTML)
[ 이 문서는 Windows 런타임 앱을 작성하는 Windows에서 8.x 및 Windows Phone 8.x 개발자를 대상으로 합니다. Windows 10용으로 개발하는 경우에는 최신 설명서를 참조하세요.]
StorageFile 개체에 의해 표현되는 파일의 속성을 가져옵니다.
사전 요구 사항
폴더 및 파일을 조작하는 데 사용되는 대부분의 메서드는 비동기입니다. 비동기 앱 작성 방법에 대한 자세한 내용은 JavaScript의 비동기 프로그래밍을 참조하세요.
파일의 최상위 속성 가져오기
많은 최상위 파일 속성은 StorageFile 클래스의 구성원으로 액세스할 수 있습니다. 이러한 속성에는 파일 특성, 콘텐츠 형식, 만든 날짜, 표시 이름, 파일 형식 등의 데이터가 포함됩니다.
다음 코드에서는 사진 라이브러리의 모든 파일을 열거하고 각 파일의 최상위 이름 및 유형 속성에 액세스합니다.
var library = Windows.Storage.KnownFolders.picturesLibrary;
var outString = "";
library.getFilesAsync().then(function (files) {
files.forEach(function (file) {
outString += "File name: " + file.name + "\n";
outString += "File type: " + file.fileType + "\n";
outString += "\n"
});
파일의 기본 속성 가져오기
많은 기본 파일 속성은 먼저 StorageFile.getBasicPropertiesAsync 메서드를 호출하여 가져옵니다. 이 메서드는 BasicProperties 개체를 반환하며, 이 개체는 항목이 마지막으로 수정된 시간뿐만 아니라 항목(파일 또는 폴더)의 크기에 대한 속성을 정의합니다.
다음 코드에서는 사진 라이브러리의 모든 파일을 열거하고 각 파일의 최상위 및 기본 속성에 모두 액세스합니다. 코드는 StorageFolder.getFilesAsync 및 StorageFile.getBasicPropertiesAsync 등 두 가지의 비동기 메서드 호출을 동기화하기 위해 JavaScript promise 및 WinJS.Promises.join 메서드를 사용합니다.
var library = Windows.Storage.KnownFolders.picturesLibrary;
var outString = "";
library.getFilesAsync().then(function (files) {
var promises = [];
files.forEach(function (file) {
promises.push(WinJS.Promise.as(file));
promises.push(file.getBasicPropertiesAsync());
})
return WinJS.Promise.join(promises);
})
.done(function (results) {
var counter = 0
while (counter < results.length) {
var file = results[counter];
var props = results[counter + 1];
outString += "File name: " + file.name + "\n";
outString += "File type: " + file.fileType + "\n";
outString += "File size: " + props.size + "\n";
outString += "\n"
counter = counter + 2;
}
});
요약
이 빠른 시작에서는 StorageFile 개체로 표시되는 지정된 파일의 최상위 및 기본 속성을 가져오는 방법을 알아보았습니다.