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
FileWriterhas been created successfully; theFileWriteris passed into the callback as the only parameter. errorCallbackOptional- 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 aFileErrorobject describing the error.
Return value
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.
This API has no official W3C or WHATWG specification.
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
createWriter | Chrome Full support 8 | Edge Full support 79 | Firefox
No support
50 — 52
| IE No support No | Opera No support No | Safari No support No | WebView Android Full support ≤37 | Chrome Android Full support 18 | Firefox Android
No support
50 — 52
| Opera Android No support No | Safari iOS No support No | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
- No support
- No support
- 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.
