Description
Utilisez l'API chrome.fileSystem
pour créer, lire, parcourir et écrire dans le système de fichiers local de l'utilisateur. Avec cette API, les applications Chrome peuvent lire et écrire à un emplacement sélectionné par l'utilisateur. Par exemple, une application d'édition 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
Garantie de disponibilité
Types
AcceptOption
Propriétés
-
description
string facultatif
Il s'agit de la description textuelle facultative de cette option. Si elle n'est pas spécifiée, une description est générée automatiquement. Elle contient généralement une liste étendue d'extensions valides (par exemple, "texte/html" peut se développer en "*.html, *.htm").
-
extensions
string[] facultatif
Extensions à accepter, par exemple "jpg", "gif" ou "crx".
-
mimeTypes
string[] facultatif
Types MIME à accepter, par exemple "image/jpeg" ou "audio/*". L'un des mimeTypes ou des extensions doit contenir au moins un élément valide.
ChooseEntryOptions
Propriétés
-
accepte
AcceptOption[] facultatif
Liste facultative des options d'acceptation pour cet ouvre-fichier. Chaque option est présentée à l'utilisateur final sous la forme d'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 "acceptes". 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. Cette opération n'est possible que pour openFile et openWritableFile. Le rappel de "ChooseEntry" sera appelé avec une liste d'entrées si la valeur définie est "true". Sinon, il sera appelé avec une seule entrée.
-
suggestedName
string facultatif
Nom de fichier suggéré qui sera présenté à l'utilisateur comme nom par défaut à lire ou à écrire. Ceci est facultatif.
-
Type
ChooseEntryType facultatif
Type de requête à afficher. La valeur par défaut est "openFile".
ChooseEntryType
Enum
"openFile"
Invite l'utilisateur à ouvrir un fichier existant et renvoie une entrée FileEntry en cas de réussite. À partir de la version 31 de Chrome, l'entrée FileEntry sera accessible en écriture si l'application dispose de l'autorisation d'écriture sous "fileSystem". Sinon, elle sera en lecture seule.
"openWritableFile"
Invite l'utilisateur à ouvrir un fichier existant et renvoie une entrée FileEntry accessible en écriture en cas de réussite. Les appels utilisant ce type échoueront et généreront une erreur d'exécution si l'application ne dispose pas de l'autorisation d'écriture sous "fileSystem".
"saveFile"
Invite l'utilisateur à ouvrir un fichier existant ou un nouveau fichier, et renvoie une FileEntry accessible en écriture en cas de réussite. Les appels utilisant ce type échoueront et généreront une erreur d'exécution si l'application ne dispose pas de l'autorisation d'écriture sous "fileSystem".
"openDirectory"
Invite l'utilisateur à ouvrir un répertoire et affiche une entrée DirectoryEntry en cas de réussite. Les appels utilisant ce type échoueront et généreront une erreur d'exécution si l'application ne dispose pas de l'autorisation "directory" sous "fileSystem". Si l'application dispose de l'autorisation d'écriture sous "fileSystem", l'entrée DirectoryEntry renvoyée sera accessible en écriture, sinon elle sera en lecture seule. Nouveautés de Chrome 31
RequestFileSystemOptions
Propriétés
-
volumeId
chaîne
ID du volume demandé.
-
accessible en écriture
Booléen facultatif
Indique si le système de fichiers demandé est accessible en écriture. Par défaut, ce mode est en lecture seule.
Volume
Propriétés
-
volumeId
chaîne
-
accessible en écriture
boolean
VolumeListChangedEvent
Propriétés
-
volumes
Volume[]
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
function
Le paramètre
callback
se présente comme suit :(entry?: Entry, fileEntries?: FileEntry[]) => void
-
entry
Entrée facultative
-
fileEntries
FileEntry[] facultatif
-
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
)
Permet d'obtenir le chemin à afficher d'un objet Entry. Le chemin à afficher est basé sur le chemin d'accès complet au fichier ou au répertoire sur le système de fichiers local, mais il peut être rendu plus lisible à des fins d'affichage.
Paramètres
-
entry
Entrée
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(displayPath: string) => void
-
displayPath
chaîne
-
Renvoie
-
Promesse<chaîne>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getVolumeList()
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
n'est pas défini, et chrome.runtime.lastError
est défini.
Paramètres
Renvoie
-
Promise<Volume[] | undefined>
Chrome 117 et versions ultérieuresLes 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,
)
Obtenez une entrée accessible en écriture à partir d'une autre entrée. Cet appel échouera et générera une erreur d'exécution si l'application ne dispose pas de l'autorisation d'écriture sous "fileSystem". Si l'entrée est une entrée DirectoryEntry, cet appel échouera si l'application ne dispose pas de l'autorisation "directory" sous "fileSystem".
Paramètres
-
entry
Entrée
-
rappel
function
Le paramètre
callback
se présente comme suit :(entry: Entry) => void
-
entry
Entrée
-
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
)
Indique si l'application est autorisée à restaurer l'entrée associée à l'ID donné.
Paramètres
-
id
chaîne
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(isRestorable: boolean) => void
-
isRestorable
boolean
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
isWritableEntry()
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
fonction facultative
Le paramètre
callback
se présente comme suit :(isWritable: boolean) => void
-
isWritable
boolean
-
Renvoie
-
Promise<boolean>
Chrome 117 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
requestFileSystem()
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 est 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 en session kiosque. Pour le lancement manuel en mode Kiosque, une boîte de dialogue de confirmation s'affiche en haut de la fenêtre de l'application active. En cas d'erreur, fileSystem
n'est pas défini, et chrome.runtime.lastError
est défini.
Paramètres
-
options
-
rappel
fonction facultative
Le paramètre
callback
se présente comme suit :(fileSystem?: FileSystem) => void
-
fileSystem
FileSystem facultatif
-
Renvoie
-
Promise<FileSystem | undefined>
Chrome 117 et versions ultérieuresLes 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 associée à 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
function
Le paramètre
callback
se présente comme suit :(entry: Entry) => void
-
entry
Entrée
-
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
)
Renvoie un identifiant pouvant être transmis àRestoreEntry pour récupérer l'accès à une entrée de fichier donnée. Seules les 500 dernières entrées utilisées sont conservées, les appels à conserverEntry et restaurerEntry sont considérés comme des utilisations. Si l'application dispose de l'autorisation "retainEntries" sous "fileSystem", les entrées sont conservées indéfiniment. Sinon, les entrées ne sont conservées que pendant que l'application est en cours d'exécution et entre les redémarrages.
Paramètres
-
entry
Entrée
Renvoie
-
chaîne
Événements
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
Appelée lorsqu'une liste des volumes disponibles est modifiée.
Paramètres
-
rappel
function
Le paramètre
callback
se présente comme suit :(event: VolumeListChangedEvent) => void
-
event
-