FileSystemFileEntry.file()
The FileSystemFileEntry
interface's method file()
returns a File
object which can be used to read data from the file represented by the directory entry.
Syntax
FileSystemFileEntry.file(successCallback[, errorCallback]);
Parameters
successCallback
-
A callback function which is called when the
File
has been created successfully; theFile
is passed into the callback as the only parameter. -
errorCallback
Optional -
If provided, this must be a method which is called when an error occurs while trying to create the
File
. This callback receives as input aDOMException
object describing the error.
Return value
Example
This example establishes a method, readFile()
, reads a text file and calls a specified callback function with the received text (in a String
object) once the read is completed. If an error occurs, a specified (optional) error callback is called.
function readFile(entry, successCallback, errorCallback) { entry.file(function(file) { let reader = new FileReader(); reader.onload = function() { successCallback(reader.result); }; reader.onerror = function() { errorCallback(reader.error); } reader.readAsText(file); }, errorCallback); }
This function calls file()
, specifying as its success callback a method which proceeds to use a FileReader
to read the file as text. The FileReader's load
event handler is set up to deliver the loaded string to the successCallback
specified when the readFile()
method was called; similarly, its error
handler is set up to call the errorCallback
specified.
Specifications
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 | |
file |
8 |
79 |
50 |
No |
No |
11.1 |
≤37 |
18 |
50 |
No |
11.3 |
1.0 |
See also
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry/file