Beschreibung
Mit der chrome.fileSystem API können Sie das lokale Dateisystem des Nutzers erstellen, lesen, durchsuchen und darin schreiben. Mit dieser API können Chrome-Apps Daten an einem vom Nutzer ausgewählten Speicherort lesen und schreiben. Eine Texteditor-App kann die API beispielsweise verwenden, um lokale Dokumente zu lesen und zu schreiben. Alle Fehler werden über chrome.runtime.lastError gemeldet.
Berechtigungen
fileSystemVerfügbarkeit
Typen
AcceptOption
Attribute
- 
    BeschreibungString optional Dies ist die optionale Textbeschreibung für diese Option. Wenn nicht vorhanden, wird automatisch eine Beschreibung generiert, die in der Regel eine erweiterte Liste gültiger Erweiterungen enthält (z.B. kann „text/html“ zu „*.html, *.htm“ erweitert werden). 
- 
    Erweiterungenstring[] optional Erweiterungen, die akzeptiert werden sollen, z.B. „jpg“, „gif“, „crx“. 
- 
    mimeTypesstring[] optional Zu akzeptierende MIME-Typen, z.B. „image/jpeg“ oder „audio/*“. Eines der Elemente „mimeTypes“ oder „extensions“ muss mindestens ein gültiges Element enthalten. 
ChooseEntryOptions
Attribute
- 
    akzeptiertAcceptOption[] optional Die optionale Liste der Accept-Optionen für diesen Datei-Opener. Jede Option wird dem Endnutzer als separate Gruppe präsentiert. 
- 
    acceptsAllTypesboolean optional Gibt an, ob alle Dateitypen zusätzlich zu den im Argument „accepts“ angegebenen Optionen akzeptiert werden sollen. Die Standardeinstellung ist "true". Wenn das Feld „accepts“ nicht festgelegt ist oder keine gültigen Einträge enthält, wird es immer auf „true“ zurückgesetzt. 
- 
    acceptsMultipleboolean optional Gibt an, ob mehrere Dateien akzeptiert werden sollen. Dies wird nur für openFile und openWritableFile unterstützt. Der Callback „chooseEntry“ wird mit einer Liste von Einträgen aufgerufen, wenn diese Option auf „true“ gesetzt ist. Andernfalls wird sie mit einem einzelnen Eintrag aufgerufen. 
- 
    suggestedNameString optional Der vorgeschlagene Dateiname, der dem Nutzer als Standardname zum Lesen oder Schreiben angezeigt wird. Dies ist optional. 
- 
    TypChooseEntryType optional Typ der einzublendenden Aufforderung. Der Standardwert ist „openFile“. 
ChooseEntryType
Enum
openFile 
 Fordert den Nutzer auf, eine vorhandene Datei zu öffnen, und gibt bei Erfolg einen FileEntry zurück. Ab Chrome 31 ist der FileEntry schreibbar, wenn die Anwendung die Berechtigung „write“ unter „fileSystem“ hat. Andernfalls ist der FileEntry schreibgeschützt.
„openWritableFile“ 
 Fordert den Nutzer auf, eine vorhandene Datei zu öffnen, und gibt bei Erfolg einen beschreibbaren FileEntry zurück. Aufrufe mit diesem Typ schlagen mit einem Laufzeitfehler fehl, wenn die Anwendung nicht die Berechtigung „write“ unter „fileSystem“ hat.
„saveFile“ 
 Fordert den Nutzer auf, eine vorhandene Datei oder eine neue Datei zu öffnen, und gibt bei Erfolg einen beschreibbaren FileEntry zurück. Aufrufe mit diesem Typ schlagen mit einem Laufzeitfehler fehl, wenn die Anwendung nicht die Berechtigung „write“ unter „fileSystem“ hat.
„openDirectory“ 
 Fordert den Nutzer auf, ein Verzeichnis zu öffnen, und gibt bei Erfolg einen DirectoryEntry zurück. Aufrufe dieses Typs schlagen mit einem Laufzeitfehler fehl, wenn die Anwendung nicht die Berechtigung „directory“ unter „fileSystem“ hat. Wenn die Anwendung die Berechtigung „write“ unter „fileSystem“ hat, ist der zurückgegebene DirectoryEntry schreibbar. Andernfalls ist er schreibgeschützt. Neu in Chrome 31.
RequestFileSystemOptions
Attribute
- 
    volumeIdString Die ID des angeforderten Volumes. 
- 
    Bearbeitbarboolean optional Gibt an, ob das angeforderte Dateisystem beschreibbar sein soll. Der Standardwert ist „Schreibgeschützt“. 
Volume
Attribute
- 
    volumeIdString 
- 
    Bearbeitbarboolean 
VolumeListChangedEvent
Attribute
- 
    volumesVolume[] 
Methoden
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
): void
Bitten Sie den Nutzer, eine Datei oder ein Verzeichnis auszuwählen.
Parameter
- 
    OptionenChooseEntryOptions optional 
- 
    callbackFunktion Der Parameter callbacksieht so aus:(entry?: Entry, fileEntries?: FileEntry[]) => void - 
    EintragEintrag optional 
- 
    fileEntriesFileEntry[] optional 
 
- 
    
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
): Promise<string>
Den Displaypfad eines Entry-Objekts abrufen Der Anzeigepfad basiert auf dem vollständigen Pfad der Datei oder des Verzeichnisses im lokalen Dateisystem, kann aber für die Anzeige lesbarer gemacht werden.
Parameter
- 
    EintragEintrag 
- 
    callbackFunktion optional Der Parameter callbacksieht so aus:(displayPath: string) => void - 
    displayPathString 
 
- 
    
Ausgabe
- 
            Promise<string> Chrome 117 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden. 
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
): Promise<Volume[] | undefined>
Gibt eine Liste der für requestFileSystem() verfügbaren Volumes zurück. Die Manifestberechtigung "fileSystem": {"requestFileSystem"} ist erforderlich. Nur für Kiosk-Apps verfügbar, die in der Kiosksitzung ausgeführt werden. Im Fehlerfall ist volumes nicht definiert und chrome.runtime.lastError wird festgelegt.
Parameter
Ausgabe
- 
            Promise<Volume[] | undefined> Chrome 117 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden. 
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
): void
Einen beschreibbaren Eintrag aus einem anderen Eintrag abrufen. Dieser Aufruf schlägt mit einem Laufzeitfehler fehl, wenn die Anwendung nicht die Berechtigung „write“ unter „fileSystem“ hat. Wenn „entry“ ein DirectoryEntry ist, schlägt dieser Aufruf fehl, wenn die Anwendung nicht die Berechtigung „directory“ unter „fileSystem“ hat.
Parameter
- 
    EintragEintrag 
- 
    callbackFunktion Der Parameter callbacksieht so aus:(entry: Entry) => void - 
    EintragEintrag 
 
- 
    
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
): Promise<boolean>
Gibt zurück, ob die App die Berechtigung hat, den Eintrag mit der angegebenen ID wiederherzustellen.
Parameter
- 
    idString 
- 
    callbackFunktion optional Der Parameter callbacksieht so aus:(isRestorable: boolean) => void - 
    isRestorableboolean 
 
- 
    
Ausgabe
- 
            Promise<boolean> Chrome 117 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden. 
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
): Promise<boolean>
Gibt an, ob dieser Eintrag schreibgeschützt ist.
Parameter
- 
    EintragEintrag 
- 
    callbackFunktion optional Der Parameter callbacksieht so aus:(isWritable: boolean) => void - 
    isWritableboolean 
 
- 
    
Ausgabe
- 
            Promise<boolean> Chrome 117 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden. 
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
): Promise<FileSystem | undefined>
Fordert Zugriff auf ein Dateisystem für ein Volume an, das durch options.volumeId dargestellt wird. Wenn options.writable auf „true“ gesetzt ist, ist das Dateisystem beschreibbar. Andernfalls ist sie schreibgeschützt. Für die Option writable ist die Berechtigung "fileSystem": {"write"} im Manifest erforderlich. Nur für Kiosk-Apps verfügbar, die in einer Kiosksitzung ausgeführt werden. Im Kioskmodus mit manuellem Start wird ein Bestätigungsdialogfeld über dem aktiven App-Fenster angezeigt. Im Fehlerfall ist fileSystem nicht definiert und chrome.runtime.lastError wird festgelegt.
Parameter
- 
    Optionen
- 
    callbackFunktion optional Der Parameter callbacksieht so aus:(fileSystem?: FileSystem) => void - 
    fileSystemFileSystem optional 
 
- 
    
Ausgabe
- 
            Promise<FileSystem | undefined> Chrome 117 und höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden. 
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
): void
Gibt den Dateieintrag mit der angegebenen ID zurück, sofern er wiederhergestellt werden kann. Andernfalls schlägt der Aufruf mit einem Laufzeitfehler fehl.
Parameter
- 
    idString 
- 
    callbackFunktion Der Parameter callbacksieht so aus:(entry: Entry) => void - 
    EintragEintrag 
 
- 
    
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
): string
Gibt eine ID zurück, die an „restoreEntry“ übergeben werden kann, um den Zugriff auf einen bestimmten Dateieintrag wiederherzustellen. Es werden nur die 500 zuletzt verwendeten Einträge beibehalten. Aufrufe von „retainEntry“ und „restoreEntry“ gelten als Verwendung. Wenn die App die Berechtigung „retainEntries“ unter „fileSystem“ hat, werden Einträge auf unbestimmte Zeit beibehalten. Andernfalls werden Einträge nur beibehalten, solange die App ausgeführt wird und auch nach Neustarts.
Parameter
- 
    EintragEintrag 
Ausgabe
- 
            String 
Ereignisse
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
Wird aufgerufen, wenn sich eine Liste der verfügbaren Volumes ändert.
Parameter
- 
    callbackFunktion Der Parameter callbacksieht so aus:(event: VolumeListChangedEvent) => void - 
    event
 
-