DirectoryEntrySync
Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.
The DirectoryEntrySync
interface of the File System API represents a directory in a file system. It includes methods for creating, reading, looking up, and recursively removing files in a directory.
Note: This interface has been abandoned: it was on a standard track and it proves not a good idea. Do not use it anymore.
About this document
This document was last updated on March 2, 2012 and follows the W3C Specifications (Working Draft) drafted on April 19, 2011.
This specification is pretty much abandoned, having failed to reach any substantial traction.
Basic concepts
If you want to create subdirectories, you have to create each child directory in sequence. If you try to create a directory using a full path that includes parent directories that do not exist yet, you get an error. So create the hierarchy by recursively adding a new path after creating the parent directory.
Example
The getFile()
method returns a FileEntrySync
, which represents a file in the file system. The following creates an empty file called seekrits.txt
in the root directory.
var fileEntry = fs.root.getFile('seekrits.txt', {create: true});
The getDirectory()
method returns a DirectoryEntrySync
, which represents a file in the file system. The following creates a new directory called superseekrit
in the root directory.
var dirEntry = fs.root.getDirectory('superseekrit', {create: true});
Method overview
Methods
createReader()
Creates a new DirectoryReaderSync
to read entries from this directory.
DirectoryReaderSync createReader (
) raises (FileException);
Returns
DirectoryReaderSync
-
Represents a directory in a file system.
Parameter
None
Exceptions
This method can raise a FileException with the following codes:
getFile()
Depending on how you've set the options
parameter, the method either creates a file or looks up an existing file.
void getFile (
in DOMString path, in optional Flags options
) raises (FileException);
Parameter
- path
-
Either an absolute path or a relative path from the directory to the file to be looked up or created. You cannot create a file whose immediate parent does not exist. Create the parent directory first.
- options
-
An object literal describing the behavior of the method. If the file does not exist, it is created.
Returns
FileEntrySync
-
Represents a file in a file system.
Exceptions
This method can raise a FileException with the following codes:
getDirectory()
Creates or looks up a directory. The method is similar to getFile()
with DirectoryEntrySync being passed.
void getDirectory (
in DOMString path, in optional Flags options
) raises (FileException);
Parameter
- path
-
Either an absolute path or a relative path from the directory to the file to be looked up or created. You cannot create a file whose immediate parent does not exist. Create the parent directory first.
- options
-
An object literal describing the behavior of the method if the file does not exist.
Returns
DirectoryEntrySync
-
Represents a directory in a file system.
Exceptions
This method can raise a FileException with the following codes:
removeRecursively()
Deletes a directory and all of its contents. You cannot delete the root directory of a file system.
If you delete a directory that contains a file that cannot be removed or if an error occurs while the deletion is in progress, some of the contents might not be deleted. Catch these cases with error callbacks and retry the deletion.
void removeRecursively (
) raises (FileException);
Parameter
None
Returns
undefined
Exceptions
This method can raise a FileException with the following codes:
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
DirectoryEntrySync |
13 |
79 |
No |
No |
No |
No |
37 |
18 |
No |
No |
No |
1.0 |
See also