FileSystemFileEntry.file()
FileSystemFileEntry
インターフェイスの file()
メソッドは、子のディレクトリー項目が表現しているファイルからデータを読むために使用できる File
オブジェクトを返します。
構文
file(successCallback);
file(successCallback, errorCallback);
引数
successCallback
-
コールバック関数で、
File
が正常に作成されたときに呼び出されます。コールバックには、唯一の引数としてFile
が渡されます。 errorCallback
省略可-
指定された場合、
File
を作成しようとしてエラーが発生したときに呼び出されるメソッドである必要があります。このコールバックは、エラーを記述したDOMException
オブジェクトを入力として受け取ります。
返値
なし (undefined
)。
例
この例ではメソッド readFile()
を作成し、テキストファイルを読み込み、読み込みが完了すると、指定されたコールバック関数を受け取ったテキスト(文字列)つきで呼び出します。エラーが発生した場合は、指定された(オプションの)エラーコールバック関数が呼び出されます。
function readFile(entry, successCallback, errorCallback) {
entry.file(function (file) {
let reader = new FileReader();
reader.onload = function () {
successCallback(reader.result);
};
reader.onerror = function () {
errorCallback(reader.error);
};
reader.readAsText(file);
}, errorCallback);
}
この関数は file()
を呼び出し、その成功コールバックとして FileReader
を使ってファイルをテキストとして読み込むメソッドを指定します。 FileReader の load
イベントハンドラーは、読み込んだ文字列を readFile()
メソッドが呼ばれたときに指定した successCallback
に渡すようにセットアップされています。同様に、error
ハンドラーは、指定された errorCallback
を呼び出すようにセットアップされます。
仕様書
Specification |
---|
File and Directory Entries API # dom-filesystemfileentry-file |
ブラウザーの互換性
BCD tables only load in the browser