FileSystemFileEntry.createWriter()

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

Obsolete
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

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 FileSystemFileEntry interface's method createWriter() returns a FileWriter object which can be used to write data into the file represented by the directory entry.

Syntax

FileSystemFileEntry.createWriter(successCallback[, errorCallback]);

Parameters

successCallback
A callback function which is called when the FileWriter has been created successfully; the FileWriter is passed into the callback as the only parameter.
errorCallback Optional
If provided, this must be a method which is caled when an error occurs while trying to create the FileWriter. This callback receives as input a FileError object describing the error.

Return value

undefined.

Example

This example establishes a method, writeToFileEntry(), which outputs a text string to the file corresponding to the passed-in directory entry.

function writeToFileEntry(entry, text) {
  entry.createWriter(function(fileWriter) {
    let data = Blob([text], { type: "text/plain" });

    fileWriter.write(data);
  }, function(fileError) {
    /* do whatever to handle the error */
  });
}

The success callback for the createWriter() call takes the text which was passed in and creates a new Blob object of type text/plain that contains the passed text. This blob is then output to the FileWriter object to be written to the file.

Specifications

Specification Status Comment
File and Directory Entries API
The definition of 'createWriter()' in that specification.
Draft Initial specification.

This API has no official W3C or WHATWG specification.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic support
DeprecatedNon-standard
Chrome Full support 13Edge No support NoFirefox No support 50 — 52
Notes
No support 50 — 52
Notes
Notes While the createWriter() method existed, it immediately called errorCallback with the NS_ERROR_DOM_SECURITY_ERR error.
IE No support NoOpera No support NoSafari No support NoWebView Android Full support YesChrome Android Full support YesEdge Mobile No support NoFirefox Android No support 50 — 52
Notes
No support 50 — 52
Notes
Notes While the createWriter() method existed, it immediately called errorCallback with the NS_ERROR_DOM_SECURITY_ERR error.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.
Deprecated. Not for use in new websites.
See implementation notes.
See implementation notes.

See also

Document Tags and Contributors

Contributors to this page: thnam, fscholz, Sheppy
Last updated by: thnam,