chrome.fileSystem

Description

Utilisez l'API chrome.fileSystem pour créer, lire, parcourir et écrire dans le système de fichiers local de l'utilisateur. Grâce à cette API, les applications Chrome peuvent lire et écrire dans l'emplacement sélectionné par l'utilisateur. Par exemple, une application d'éditeur de texte peut utiliser l'API pour lire et écrire des documents locaux. Tous les échecs sont signalés via chrome.runtime.lastError.

Autorisations

fileSystem

Disponibilité

<ph type="x-smartling-placeholder"></ph> Premier plan uniquement

Types

AcceptOption

Propriétés

  • description

    chaîne facultatif

    Ceci est le texte de description facultatif pour cette option. S'il n'est pas présent, une description sera générée automatiquement. qui contient généralement une liste étendue d'extensions valides (par exemple, "text/html" peut être remplacé par "*.html, *.htm").

  • extensions

    string[] facultatif

    Extensions à accepter, par exemple "jpg", "gif" et "crx".

  • mimeTypes

    string[] facultatif

    Types MIME à accepter, par exemple "image/jpeg" ou "audio/*". L'un des types MIME ou les extensions doit contenir au moins un élément valide.

ChooseEntryOptions

Propriétés

  • accepte

    AcceptOption[] facultatif

    Liste facultative des options d'acceptation pour cet outil d'ouverture de fichier. Chaque option sera présentée à l'utilisateur final comme un groupe unique.

  • acceptsAllTypes

    Booléen facultatif

    Permet d'accepter ou non tous les types de fichiers, en plus des options spécifiées dans l'argument "accepte". La valeur par défaut est "true". Si le champ "accepte" n'est pas défini ou ne contient aucune entrée valide, la valeur est toujours "true".

  • acceptsMultiple

    Booléen facultatif

    Permet d'accepter ou non plusieurs fichiers. Cela n'est compatible qu'avec openFile et openWritableFile. Si la valeur est "true", le rappel de chooseEntry sera appelé avec une liste d'entrées. Sinon, il est appelé avec une seule entrée.

  • suggestedName

    chaîne facultatif

    Nom de fichier suggéré qui sera présenté à l'utilisateur comme nom de fichier par défaut pour la lecture ou l'écriture. Ceci est facultatif.

  • type

    ChooseEntryType facultatif

    Type de requête à afficher. La valeur par défaut est "openFile".

ChooseEntryType

Énumération

&quot;openFile&quot;
Invite l'utilisateur à ouvrir un fichier existant et renvoie une entrée FileEntry en cas de réussite. À partir de Chrome 31, l'élément FileEntry sera accessible en écriture si l'application dispose du rôle "write" l'autorisation sous 'fileSystem'; sinon FileEntry sera en lecture seule.

&quot;openWritableFile&quot;
Invite l'utilisateur à ouvrir un fichier existant et renvoie un FileEntry accessible en écriture en cas de réussite. Les appels utilisant ce type échouent et génèrent une erreur d'exécution si l'application ne dispose pas du rôle "write" l'autorisation sous "fileSystem".

"saveFile"
Invite l'utilisateur à ouvrir un fichier existant ou un nouveau fichier, et renvoie une entrée FileEntry accessible en écriture en cas de réussite. Les appels utilisant ce type échouent et génèrent une erreur d'exécution si l'application ne dispose pas du rôle "write" l'autorisation sous "fileSystem".

&quot;openDirectory&quot;
Invite l'utilisateur à ouvrir un répertoire et renvoie une entrée DirectoryEntry en cas de réussite. Les appels utilisant ce type échouent et génèrent une erreur d'exécution si l'application ne dispose pas de ce "répertoire" l'autorisation sous "fileSystem". Si l'application dispose d'un accès en écriture l'autorisation sous 'fileSystem', l'entrée DirectoryEntry renvoyée sera accessible en écriture ; sinon il sera en lecture seule. nouveautés de Chrome 31.

RequestFileSystemOptions

Chrome (version 44 ou ultérieure)

Propriétés

  • volumeId

    chaîne

    ID du volume demandé.

  • accessible en écriture

    Booléen facultatif

    Indique si le système de fichiers demandé doit être accessible en écriture. La valeur par défaut est en lecture seule.

Volume

Chrome (version 44 ou ultérieure)

Propriétés

  • volumeId

    chaîne

  • accessible en écriture

    booléen

VolumeListChangedEvent

Chrome (version 44 ou ultérieure)

Propriétés

Méthodes

chooseEntry()

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

Demandez à l'utilisateur de choisir un fichier ou un répertoire.

Paramètres

  • options

    ChooseEntryOptions facultatif

  • rappel

    fonction

    Le paramètre callback se présente comme suit:

    (entry?: Entry, fileEntries?: FileEntry[]) => void

    • entry

      Entrée facultatif

    • fileEntries

      FileEntry[] facultatif

getDisplayPath()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)

Récupère le chemin à afficher d'un objet Entry. Le chemin d'affichage est basé sur le chemin d'accès complet du fichier ou du répertoire sur le système de fichiers local, mais il peut être plus lisible à des fins d'affichage.

Paramètres

  • entry

    Entrée

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (displayPath: string) => void

    • displayPath

      chaîne

Renvoie

  • Promise&lt;string&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getVolumeList()

<ph type="x-smartling-placeholder"></ph> Promesse Chrome (version 44 ou ultérieure)
chrome.fileSystem.getVolumeList(
  callback?: function,
)

Renvoie la liste des volumes disponibles pour requestFileSystem(). L'autorisation "fileSystem": {"requestFileSystem"} du fichier manifeste est requise. Disponible uniquement pour les applications kiosque exécutées dans la session kiosque. En cas d'erreur, volumes sera indéfini, et chrome.runtime.lastError sera défini.

Paramètres

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (volumes?: Volume[]) => void

    • volumes

      Volume[] facultatif

Renvoie

  • Promise&lt;Volume[] | indéfini>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getWritableEntry()

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

Permet d'obtenir une entrée accessible en écriture à partir d'une autre entrée. Cet appel échoue et renvoie une erreur d'exécution si l'application ne dispose pas du rôle "write" l'autorisation sous "fileSystem". Si l'entrée est une entrée DirectoryEntry, cet appel échouera si l'application ne possède pas le répertoire l'autorisation sous "fileSystem".

Paramètres

  • entry

    Entrée

  • rappel

    fonction

    Le paramètre callback se présente comme suit:

    (entry: Entry) => void

    • entry

      Entrée

isRestorable()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)

Indique si l'application est autorisée à restaurer l'entrée avec l'ID donné.

Paramètres

  • id

    chaîne

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (isRestorable: boolean) => void

    • isRestorable

      booléen

Renvoie

  • Promise&lt;boolean&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

isWritableEntry()

<ph type="x-smartling-placeholder"></ph> Promesse
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)

Détermine si cette entrée est accessible en écriture ou non.

Paramètres

  • entry

    Entrée

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (isWritable: boolean) => void

    • isWritable

      booléen

Renvoie

  • Promise&lt;boolean&gt;

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

requestFileSystem()

<ph type="x-smartling-placeholder"></ph> Promesse Chrome (version 44 ou ultérieure)
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)

Demande l'accès à un système de fichiers pour un volume représenté par options.volumeId. Si options.writable est défini sur "true", le système de fichiers sera accessible en écriture. Sinon, il sera en lecture seule. L'option writable nécessite l'autorisation "fileSystem": {"write"} dans le fichier manifeste. Disponible uniquement pour les applications kiosque exécutées dans une session kiosque. En mode Kiosque à lancement manuel, une boîte de dialogue de confirmation s'affiche en haut de la fenêtre de l'application active. En cas d'erreur, fileSystem sera indéfini, et chrome.runtime.lastError sera défini.

Paramètres

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit:

    (fileSystem?: FileSystem) => void

    • fileSystem

      FileSystem facultatif

Renvoie

  • Promise&lt;FileSystem | indéfini>

    Chrome 117 ou version ultérieure

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

restoreEntry()

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

Renvoie l'entrée de fichier avec l'ID donné si elle peut être restaurée. Dans le cas contraire, cet appel échouera et générera une erreur d'exécution.

Paramètres

  • id

    chaîne

  • rappel

    fonction

    Le paramètre callback se présente comme suit:

    (entry: Entry) => void

    • entry

      Entrée

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)

Renvoie un ID qui peut être transmis à findEntry pour récupérer l'accès à une entrée de fichier donnée. Seules les 500 entrées les plus récemment utilisées sont conservées, et les appels à "holdEntry" et à "restoreEntry" sont considérés comme des usages. Si l'application contient les entrées l'autorisation sous "fileSystem", les entrées sont conservées indéfiniment. Sinon, les entrées ne sont conservées que pendant l'exécution de l'application et lors des redémarrages.

Paramètres

  • entry

    Entrée

Renvoie

  • chaîne

Événements

onVolumeListChanged

Chrome (version 44 ou ultérieure)
chrome.fileSystem.onVolumeListChanged.addListener(
  callback: function,
)

Appelé lorsqu'une liste de volumes disponibles est modifiée.

Paramètres