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.
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 more or less abandonned, failing to get significant traction.
You can request access to a sandboxed file system by requesting
LocalFileSystemSync object from within a web worker. The global methods in the
resolveLocalFileSystemSyncURL() methods are exposed to the Worker's global scope. Calling
window.requestFileSystemSync() for creates new storage for your web app.
For more concepts, see the counterpart article for the asynchronous API.
//Taking care of the browser-specific prefix window.requestFileSystemSync = window.requestFileSystemSync || window.webkitRequestFileSystemSync; // The first parameter defines the type of storage: persistent or temporary // Next, set the size of space needed (in bytes) // initFs is the success callback // And the last one is the error callback // for denial of access and other errors. var fs = requestFileSystemSync(TEMPORARY, 1024*1024 /*1MB*/);
Because you are using a synchronous API, you don't need success and error callbacks.
Transient storage that can be be removed by the browser at its discretion.
||Storage that stays in the browser unless the user or the app expunges it.|
Requests a file system where data should be stored. You access a sandboxed file system by requesting a
LocalFileSystemSync object from within a web worker using this global method,
window.requestFileSystemSync(). [ RESEARCH ]
FileSystemSyncrequestFileSystemSync( in unsigned short type, in unsigned long long size );
- The storage type of the file system. The values can be either
- The storage space—in bytes—that you need for your app.
- An object that represents the file system.
This method can raise an FileException with the following code:
||The application does not have permission to access the file system interface. For example, you cannot run from
Allows the user to look up the
Entry for a file or directory referred to by a local URL.
void resolveLocalFileSystemURL( in DOMString url );
- The URL of a local file in the file system.
- An object that represents entries in the file system.
This method can raise a FileException with the following codes:
||The syntax of the URL was invalid.|
||The URL was structurally correct, but refers to a resource that does not exist.|
||The application does not have permission to access the file system interface.|
We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!
|Feature||Chrome||Firefox (Gecko)||Internet Explorer||Opera||Safari (WebKit)|
|Basic support||13webkit||No support||No support||No support||No support|
|Feature||Android||Chrome for Android||Firefox Mobile (Gecko)||IE Phone||Opera Mobile||Safari Mobile|
|Basic support||No support||0.16webkit||No support||No support||No support||No support|
Specification:File API: Directories and System SpecificationWD
Reference: File System API
Introduction: Basic Concepts About the File System API