FileSystemEntry
FileSystemEntry
は ファイルとディレクトリーの項目 API のインターフェイスで、ファイルシステム内の単一の項目を表します。項目はファイルでもディレクトリーでも構いません(ディレクトリーは FileSystemDirectoryEntry
インターフェイスで表します)。この API には、ファイルを操作するためのメソッド(コピー、移動、削除、読み込みなど)が含まれます。また、また、この API が指すファイルに関する情報(ファイル名、ルートから項目までのパスなど)も含まれます。
基本概念
直接 FileSystemEntry
オブジェクトを作成することはありません。代わりに、他の API を使用してこのインターフェイスに基づくオブジェクトを受け取ります。このインターフェイスは、FileSystemFileEntry
および FileSystemDirectoryEntry
インターフェイスの基底クラスとなっており、それぞれファイルとディレクトリーを表すファイルシステム項目に固有の機能を提供します。
FileSystemEntry
インターフェイスには、ファイルやディレクトリーを操作するためのメソッドが記載されていますが、項目の URL を取得するための便利なメソッド、 toURL()
も含まれています。また、新しい URL スキーム filesystem:
も導入されています。
Google Chrome では、filesystem:
スキームを使用することで、アプリのオリジンに含まれるすべてのファイルとフォルダーを確認することができます。アプリのオリジンのルートディレクトリーに filesystem:
スキームを使用するだけです。例えば、アプリが http://www.example.com
にある場合、filesystem:http://www.example.com/temporary/
をタブで開きます。Chrome はアプリのオリジンに含まれるすべてのファイルとフォルダーの読み取り専用のリストを表示します。
例
toURL()
がどのように動作するのかの例を見るには、このメソッドの説明を参照してください。下記のスニペットは、ファイル名でファイルを除去する方法を示しています。
// ブラウザー固有の接頭辞を世話する
window.requestFileSystem =
window.requestFileSystem || window.webkitRequestFileSystem;
// …
// 一時ストレージを持つファイルシステムを開く
window.requestFileSystem(
TEMPORARY,
1024 * 1024 /*1MB*/,
(fs) => {
fs.root.getFile(
"log.txt",
{},
(fileEntry) => {
fileEntry.remove(() => {
console.log("ファイルが削除されました。");
}, onError);
},
onError,
);
},
onError,
);
インスタンスプロパティ
このインターフェイスには以下のプロパティがあります。
filesystem
読取専用-
この項目があるファイルシステムを表す
FileSystem
オブジェクト。 fullPath
読取専用-
ファイルシステムのルートから項目までの完全な絶対パスを指定された文字列。 "/" 文字を先頭につけた、ルートディレクトリーからの相対パスと考えることもできます。
isDirectory
読取専用-
論理値。この項目がディレクトリーを表している場合は
true
、そうでない場合はfalse
となります。 isFile
読取専用-
論理値で、その項目がファイルを表している場合は
true
となります。ファイルでない場合はfalse
です。 name
読取専用-
項目の名前(パスの最後の "/" の後の部分)が入った文字列。
インスタンスメソッド
このインターフェイスには以下のメソッドがあります。
copyTo()
非推奨; 非標準-
ファイルまたはディレクトリーをファイルシステムの新しい場所にコピーします。
getMetadata()
非推奨; 非標準-
ファイルの更新日時やサイズなどのメタデータを取得します。
getParent()
-
この項目の親ディレクトリーを表す
FileSystemDirectoryEntry
を返します。 moveTo()
非推奨; 非標準-
ファイルまたはディレクトリーをファイルシステム上の新しい場所に移動させるか、ファイルまたはディレクトリーの名前を変更します。
remove()
非推奨; 非標準-
指定したファイルまたはディレクトリーを除去されます。削除されるのは空のディレクトリーだけです。
toURL()
非推奨; 非標準-
この項目を識別する URL を作成して返します。この URL は URL スキーム
"filesystem:"
を使用します。
仕様書
Specification |
---|
File and Directory Entries API # api-entry |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
- ファイルとディレクトリー項目 API
- ファイルとディレクトリー項目 API の紹介
FileSystemFileEntry
とFileSystemDirectoryEntry
はFileSystemEntry
が基底クラスです。