Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The getFileHandle() method of the FileSystemDirectoryHandle interface returns a FileSystemFileHandle for a file with the specified name, within the directory the method is called.


var FileSystemFileHandle = FileSystemDirectoryHandle.getFileHandle(name);



A USVString representing the of the file you wish to retrieve.

options Optional

An object with the following properties:

  • create: A Boolean. Default false. When set to true if the file is not found, one with the specified name will be created and returned.

Return value

A Promise which resolves with a FileSystemFileHandle.


NotAllowedError DOMException

Thrown if PermissionStatus is not 'granted'.

TypeError DOMException

Thrown if the name specified is not a valid string or contains characters that would interfere with the native file system

TypeMismatchError DOMException

Thrown if the named entry is a directory and not a file.

NotFoundError DOMException

Thrown if file doesn't exist and the create option is set to false.


The following example returns a file handle with the specified name, if the file does not exist it is created.

const fileName = 'fileToGetName';

// assuming we have a directory handle: 'currentDirHandle'
const fileHandle = currentDirHandle.getFileHandle(fileName, {create: true});


File System Access
# api-filesystemdirectoryhandle-getfilehandle

Browser compatibility

BCD tables only load in the browser

See also