欢迎 What's new in Chrome extensions Get help with Chrome extensions API reference Samples
欢迎 What's new in Chrome extensions Get help with Chrome extensions API reference Samples

chrome.fileSystem

This API is part of the deprecated Chrome Apps platform. Learn more about migrating your app.
  • Description

    Use the chrome.fileSystem API to create, read, navigate, and write to the user's local file system. With this API, Chrome Apps can read and write to a user-selected location. For example, a text editor app can use the API to read and write local documents. All failures are notified via chrome.runtime.lastError.

  • Permissions
    fileSystem
  • Availability
    Foreground only

Summary

Types

AcceptOption

Properties

  • description

    string optional

    This is the optional text description for this option. If not present, a description will be automatically generated; typically containing an expanded list of valid extensions (e.g. "text/html" may expand to "*.html, *.htm").

  • extensions

    string[] optional

    Extensions to accept, e.g. "jpg", "gif", "crx".

  • mimeTypes

    string[] optional

    Mime-types to accept, e.g. "image/jpeg" or "audio/*". One of mimeTypes or extensions must contain at least one valid element.

ChooseEntryOptions

Properties

  • accepts

    AcceptOption[] optional

    The optional list of accept options for this file opener. Each option will be presented as a unique group to the end-user.

  • acceptsAllTypes

    boolean optional

    Whether to accept all file types, in addition to the options specified in the accepts argument. The default is true. If the accepts field is unset or contains no valid entries, this will always be reset to true.

  • acceptsMultiple

    boolean optional

    Whether to accept multiple files. This is only supported for openFile and openWritableFile. The callback to chooseEntry will be called with a list of entries if this is set to true. Otherwise it will be called with a single Entry.

  • suggestedName

    string optional

    The suggested file name that will be presented to the user as the default name to read or write. This is optional.

  • type

    ChooseEntryType optional

    Type of the prompt to show. The default is 'openFile'.

ChooseEntryType

Type

"openFile"

,

"openWritableFile"

,

"saveFile"

,
or

"openDirectory"

RequestFileSystemOptions

Chrome 44+

Properties

  • volumeId

    string

    The ID of the requested volume.

  • writable

    boolean optional

    Whether the requested file system should be writable. The default is read-only.

Volume

Chrome 44+

Properties

  • volumeId

    string

  • writable

    boolean

VolumeListChangedEvent

Chrome 44+

Properties

Methods

chooseEntry

chrome.fileSystem.chooseEntry(
  options?: ChooseEntryOptions,
  callback: function,
)

Ask the user to choose a file or directory.

Parameters

  • options
  • callback

    function

    The callback parameter looks like: (entry?: Entry, fileEntries?: FileEntry[]) => void

    • entry

      Entry optional

    • fileEntries

      FileEntry[] optional

getDisplayPath

chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback: function,
)

Get the display path of an Entry object. The display path is based on the full path of the file or directory on the local file system, but may be made more readable for display purposes.

Parameters

  • entry

    Entry

  • callback

    function

    The callback parameter looks like: (displayPath: string) => void

    • displayPath

      string

getVolumeList

chrome.fileSystem.getVolumeList(
  callback: function,
)
Chrome 44+

Returns a list of volumes available for requestFileSystem(). The "fileSystem": {"requestFileSystem"} manifest permission is required. Available to kiosk apps running in the kiosk session only. In case of an error, volumes will be undefined, and chrome.runtime.lastError will be set.

Parameters

  • callback

    function

    The callback parameter looks like: (volumes?: Volume[]) => void

getWritableEntry

chrome.fileSystem.getWritableEntry(
  entry: Entry,
  callback: function,
)

Get a writable Entry from another Entry. This call will fail with a runtime error if the application does not have the 'write' permission under 'fileSystem'. If entry is a DirectoryEntry, this call will fail if the application does not have the 'directory' permission under 'fileSystem'.

Parameters

  • entry

    Entry

  • callback

    function

    The callback parameter looks like: (entry: Entry) => void

    • entry

      Entry

isRestorable

chrome.fileSystem.isRestorable(
  id: string,
  callback: function,
)

Returns whether the app has permission to restore the entry with the given id.

Parameters

  • id

    string

  • callback

    function

    The callback parameter looks like: (isRestorable: boolean) => void

    • isRestorable

      boolean

isWritableEntry

chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback: function,
)

Gets whether this Entry is writable or not.

Parameters

  • entry

    Entry

  • callback

    function

    The callback parameter looks like: (isWritable: boolean) => void

    • isWritable

      boolean

requestFileSystem

chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback: function,
)
Chrome 44+

Requests access to a file system for a volume represented by options.volumeId. If options.writable is set to true, then the file system will be writable. Otherwise, it will be read-only. The writable option requires the "fileSystem": {"write"} permission in the manifest. Available to kiosk apps running in kiosk session only. For manual-launch kiosk mode, a confirmation dialog will be shown on top of the active app window. In case of an error, fileSystem will be undefined, and chrome.runtime.lastError will be set.

Parameters

  • callback

    function

    The callback parameter looks like: (fileSystem?: FileSystem) => void

    • fileSystem

      FileSystem optional

restoreEntry

chrome.fileSystem.restoreEntry(
  id: string,
  callback: function,
)

Returns the file entry with the given id if it can be restored. This call will fail with a runtime error otherwise.

Parameters

  • id

    string

  • callback

    function

    The callback parameter looks like: (entry: Entry) => void

    • entry

      Entry

retainEntry

chrome.fileSystem.retainEntry(
  entry: Entry,
)

Returns an id that can be passed to restoreEntry to regain access to a given file entry. Only the 500 most recently used entries are retained, where calls to retainEntry and restoreEntry count as use. If the app has the 'retainEntries' permission under 'fileSystem', entries are retained indefinitely. Otherwise, entries are retained only while the app is running and across restarts.

Parameters

  • entry

    Entry

Returns

  • string

Events

onVolumeListChanged

chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)
Chrome 44+

Called when a list of available volumes is changed.

Parameters

We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.