FileSystemEntry
FileSystemEntry 介面是檔案和目錄條目 API (File and Directory Entries API) 的一部分,它代表檔案系統中的單個條目。該條目可以是檔案或目錄(目錄由 FileSystemDirectoryEntry 介面表示)。它包含用於處理檔案的各種方法—包括複製、移動、刪除和讀取檔案—以及有關其指向的檔案資訊—包括檔名及其從根目錄到該條目的路徑。
基本概念
您不能直接建立 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() 工作原理的示例,請參閱方法說明。下面的程式碼片段展示瞭如何按名稱刪除檔案。
// Taking care of the browser-specific prefixes.
window.requestFileSystem =
window.requestFileSystem || window.webkitRequestFileSystem;
// …
// Opening a file system with temporary storage
window.requestFileSystem(
TEMPORARY,
1024 * 1024 /* 1MB */,
(fs) => {
fs.root.getFile(
"log.txt",
{},
(fileEntry) => {
fileEntry.remove(() => {
console.log("File removed.");
}, onError);
},
onError,
);
},
onError,
);
例項屬性
此介面提供了以下屬性。
filesystem只讀-
一個
FileSystem物件,表示條目所在的檔案系統。 fullPath只讀-
一個字串,提供從檔案系統的根目錄到該條目的完整絕對路徑;也可以將其視為相對於根目錄的路徑,前面加上 "/" 字元。
isDirectory只讀-
一個布林值,如果條目表示一個目錄,則為
true;否則為false。 isFile只讀-
一個布林值,如果條目表示一個檔案,則為
true。如果不是檔案,則此值為false。 name只讀-
一個字串,包含條目的名稱(路徑的最後一部分,在最後一個 "/" 字元之後)。
例項方法
此介面定義了以下方法。
copyTo()已棄用 非標準-
將檔案或目錄複製到檔案系統中的新位置。
getMetadata()已棄用 非標準-
獲取關於檔案的元資料,例如其修改日期和大小。
getParent()-
返回一個
FileSystemDirectoryEntry物件,表示該條目的父目錄。 moveTo()已棄用 非標準-
將檔案或目錄移動到檔案系統中的新位置,或重新命名檔案或目錄。
remove()已棄用 非標準-
刪除指定的檔案或目錄。您只能刪除空目錄。
toURL()已棄用 非標準-
建立並返回一個標識該條目的 URL。此 URL 使用 URL 方案
"filesystem:"。
規範
| 規範 |
|---|
| File and Directory Entries API # api-entry |
瀏覽器相容性
載入中…
另見
- File and Directory Entries API
FileSystemFileEntry和FileSystemDirectoryEntry基於FileSystemEntry。