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

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.

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.


FileSystemFileEntry.createWriter(successCallback[, errorCallback]);


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



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" });

  }, 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.


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 compatibilityUpdate compatibility data on GitHub

Chrome Edge Firefox Internet Explorer Opera Safari
Basic support 13 No 50 — 52
50 — 52
While the createWriter() method existed, it immediately called errorCallback with the NS_ERROR_DOM_SECURITY_ERR error.
No No No
Android webview Chrome for Android Edge Mobile Firefox for Android Opera for Android iOS Safari Samsung Internet
Basic support Yes Yes No 50 — 52
50 — 52
While the createWriter() method existed, it immediately called errorCallback with the NS_ERROR_DOM_SECURITY_ERR error.
No No ?

See also

© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.