From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- files/zh-cn/web/api/filesystementry/index.html | 113 +++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 files/zh-cn/web/api/filesystementry/index.html (limited to 'files/zh-cn/web/api/filesystementry') diff --git a/files/zh-cn/web/api/filesystementry/index.html b/files/zh-cn/web/api/filesystementry/index.html new file mode 100644 index 0000000000..8cfed42aaf --- /dev/null +++ b/files/zh-cn/web/api/filesystementry/index.html @@ -0,0 +1,113 @@ +--- +title: FileSystemEntry +slug: Web/API/FileSystemEntry +translation_of: Web/API/FileSystemEntry +--- +
{{APIRef("File System API")}} {{non-standard_header}}
+ +

The FileSystemEntry interface of the File and Directory Entries API represents a single in a file system. The entry can be a file or a directory (directories are represented by the {{domxref("DirectoryEntry")}} interface). It includes methods for working with files—including copying, moving, removing, and reading files—as well as information about a file it points to—including the file name and its path from the root to the entry.

+ +
+

Because this is a non-standard API, whose specification is not currently on a standards track, it's important to keep in mind that not all browsers implement it, and those that do may implement only small portions of it. Check the {{anch("Browser compatibility")}} section for details.

+
+ +

Basic concepts

+ +

You don't create FileSystemEntry objects directly. Instead, you will receive an object based on this interface through other APIs. This interface serves as a base class for the {{domxref("FileSystemFileEntry")}} and {{domxref("FileSystemDirectoryEntry")}} interfaces, which provide features specific to file system entries representing files and directories, respectively.

+ +

The FileSystemEntry interface includes methods that you would expect for manipulating files and directories, but it also includes a convenient method for obtaining the URL of the entry: toURL(). It also introduces a new URL scheme: filesystem:.

+ +

You can use the filesystem: scheme on Google Chrome to see all the files and folders that are stored in the origin of your app. Just use filesystem: scheme for the root directory of the origin of the app. For example, if your app is in http://www.html5rocks.com, open filesystem:http://www.html5rocks.com/temporary/ in a tab. Chrome shows a read-only list of all the files and folders stored the origin of your app.

+ +

Example

+ +

To see an example of how toURL() works, see the method description. The snippet below shows you how you can remove a file by name.

+ +
// 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*/, function(fs) {
+  fs.root.getFile('log.txt', {}, function(fileEntry) {
+
+    fileEntry.remove(function() {
+      console.log('File removed.');
+    }, onError);
+
+  }, onError);
+}, onError); 
+ +

Properties

+ +

This interface provides the following properties.

+ +
+
{{domxref("FileSystemEntry.filesystem", "filesystem")}} {{ReadOnlyInline}}
+
A {{domxref("FileSystem")}} object representing the file system in which the entry is located.
+
{{domxref("FileSystemEntry.fullPath", "fullPath")}} {{ReadOnlyInline}}
+
A {{domxref("USVString")}} object which provides the full, absolute path from the file system's root to the entry; it can also be thought of as a path which is relative to the root directory, prepended with a "/" character.
+
{{domxref("FileSystemEntry.isDirectory", "isDirectory")}} {{ReadOnlyInline}}
+
A {{jsxref("Boolean")}} which is true if the entry represents a directory; otherwise, it's false.
+
{{domxref("FileSystemEntry.isFile", "isFile")}} {{ReadOnlyInline}}
+
A Boolean which is true if the entry represents a file. If it's not a file, this value is false.
+
{{domxref("FileSystemEntry.name", "name")}} {{ReadOnlyInline}}
+
A {{domxref("USVString")}} containing the name of the entry (the final part of the path, after the last "/" character).
+
+ +

Methods

+ +

This interface defines the following methods.

+ +
+
{{domxref("FileSystemEntry.copyTo", "copyTo()")}}
+
Copies the file or directory to a new location on the file system.
+
{{domxref("FileSystemEntry.getMetadata", "getMetadata()")}}
+
Obtains metadata about the file, such as its modification date and size.
+
{{domxref("FileSystemEntry.getParent", "getParent()")}}
+
Returns a {{domxref("FileSystemDirectoryEntry")}} representing the entry's parent directory.
+
{{domxref("FileSystemEntry.moveTo", "moveTo()")}}
+
Moves the file or directory to a new location on the file system, or renames the file or directory.
+
{{domxref("FileSystemEntry.remove", "remove()")}}
+
Removes the specified file or directory. You can only remove directories which are empty.
+
{{domxref("FileSystemEntry.toURL", "toURL()")}}
+
Creates and returns a URL which identifies the entry. This URL uses the URL scheme "filesystem:".
+
+ +

Specifications

+ + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('File System API')}}{{Spec2('File System API')}}Draft of proposed API
+ +

This API has no official W3C or WHATWG specification.

+ +

Browser compatibility

+ +
+ + +

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

+
+ +

See also

+ + -- cgit v1.2.3-54-g00ecf