FileSystemFileHandle
Secure context
This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The FileSystemFileHandle
interface of the File System Access API
represents a handle to a file system entry. The interface is accessed thought the window.showOpenFilePicker()
method.
Note that read and write operations depend on file-access permissions that do not persist after a page refresh if no other tabs for that origin remain open. The queryPermission
method of the FileSystemHandle
interface can be used to verify permission state before accessing a file.
Properties
Inherits properties from its parent, FileSystemHandle
.
Methods
Inherits methods from its parent, FileSystemHandle
.
getFile()
- Returns a
file object
representing the state on disk of the entry represented by the handle. createWritable()
- Creates a
FileSystemWritableFileStream
that can be used to write to a file.
Examples
Reading a File
The following asynchronous function presents a file picker and once a file is chosen, uses the getFile()
method to retrieve the contents.
async function getTheFile() {
// open file picker
[fileHandle] = await window.showOpenFilePicker(pickerOpts);
// get file contents
const fileData = await fileHandle.getFile();
}
Writing a File
The following asynchronous function writes the given contents to the file handle, and thus to disk.
async function writeFile(fileHandle, contents) {
// Create a FileSystemWritableFileStream to write to.
const writable = await fileHandle.createWritable();
// Write the contents of the file to the stream.
await writable.write(contents);
// Close the file and write the contents to disk.
await writable.close();
}
Specifications
Specification | Status | Comment |
---|---|---|
File System Access API The definition of 'FileSystemFileHandle' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
BCD tables only load in the browser