--- title: FileSystemFileEntry slug: Web/API/FileSystemFileEntry tags: - API - File API - File System API - File and Directory Entries API - FileEntry - インターフェイス - オフライン - ファイル - リファレンス translation_of: Web/API/FileSystemFileEntry ---
{{APIRef("File System API")}}{{SeeCompatTable}}

File System APIFileSystemFileEntry インターフェイスは、ファイルシステム内のファイルを表します。
このファイルには、ファイルの属性と、ファイルを読むために使用可能な {{domxref("File")}} オブジェクトを作成する {{domxref("FileSystemFileEntry.file", "file()")}} メソッドも含まれます。

プロパティ

親インターフェイス {{domxref("FileSystemEntry")}} のプロパティを継承しますが、このインターフェイスに固有のプロパティはありません。

メソッド

{{domxref("FileSystemFileEntry.file", "file()")}}
ファイルの読み込みに使用できる新しい {{domxref("FileWriter")}} オブジェクトを作成します。

廃止されたメソッド

{{domxref("FileSystemFileEntry.createWriter", "createWriter()")}} {{obsolete_inline}}
新しい {{domxref("FileWriter")}} オブジェクトを作成し、ファイルシステムエントリで表されるファイルに書き込むことができます。

基本のコンセプト

コンテンツをファイルに書き込むには、{{domxref("FileSystemFileEntry.createWriter", "createWriter()")}} を呼び出して {{domxref("FileWriter")}} オブジェクトを作成します。 ファイルを読み込むには、{{domxref("FileSystemFileEntry.file", "file()")}} を呼び出すことによってその内容を表す {{domxref("File")}} オブジェクトを取得します。

以下のコードは "log.txt" という空のファイルを (存在しない場合は) 作成し、"Meow" というテキストで埋めています。success コールバックの内部では、{{event("error")}} error と {{event("writeend")}} イベントを処理するためのイベントハンドラが設定されています。テキストデータは、Blob を作成してテキストを付加し、{{domxref("FileWriter.write()")}} に渡すことでファイルに書き込まれます。

function onInitFs(fs) {
  fs.root.getFile('log.txt', {create: true}, function(fileEntry) {

    // FileSystemFileEntry (log.txt) 用の FileWriter オブジェクトを作成します。
    fileEntry.createWriter(function(fileWriter) {
      fileWriter.onwriteend = function(e) {
        console.log('Write completed.');
      };

      fileWriter.onerror = function(e) {
        console.log('Write failed: ' + e.toString());
      };

      // 新しい Blob を作成して log.txt に書き込みます。
      var bb = new BlobBuilder();
      bb.append('Meow');

      fileWriter.write(bb.getBlob('text/plain'));
    }, errorHandler);

  }, errorHandler);

}

window.requestFileSystem(window.TEMPORARY, 1024*1024, onInitFs, errorHandler);

仕様

仕様書 策定状況 備考
{{SpecName('File System API', '#api-fileentry', 'FileSystemFileEntry')}} {{Spec2('File System API')}} 提案された API のドラフト

ブラウザの互換性

{{Compat("api.FileSystemFileEntry")}}

あわせて参照