chrome.fileSystem

Beschrijving

Gebruik de chrome.fileSystem API om bestanden aan te maken, te lezen, te navigeren en te schrijven naar het lokale bestandssysteem van de gebruiker. Met deze API kunnen Chrome-apps lezen en schrijven naar een door de gebruiker geselecteerde locatie. Een teksteditor-app kan de API bijvoorbeeld gebruiken om lokale documenten te lezen en te schrijven. Alle fouten worden gemeld via chrome.runtime.lastError.

Toestemmingen

fileSystem

Beschikbaarheid

Alleen op de voorgrond

Soorten

AcceptOption

Eigenschappen

  • beschrijving

    string optioneel

    Dit is de optionele tekstbeschrijving voor deze optie. Indien niet ingevuld, wordt er automatisch een beschrijving gegenereerd; deze bevat doorgaans een uitgebreide lijst met geldige extensies (bijvoorbeeld "text/html" kan worden uitgebreid naar "*.html, *.htm").

  • uitbreidingen

    string[] optioneel

    Te accepteren bestandsextensies, bijvoorbeeld "jpg", "gif", "crx".

  • mimeTypes

    string[] optioneel

    Te accepteren MIME-typen, bijvoorbeeld "image/jpeg" of "audio/*". Een van de MIME-typen of extensies moet ten minste één geldig element bevatten.

ChooseEntryOptions

Eigenschappen

  • accepteert

    AcceptOption [] optioneel

    De optionele lijst met acceptatieopties voor deze bestandsopener. Elke optie wordt als een aparte groep aan de gebruiker gepresenteerd.

  • accepteertAlleTypes

    boolean optioneel

    Of alle bestandstypen moeten worden geaccepteerd, naast de opties die zijn opgegeven in het argument `accepts`. De standaardwaarde is `true`. Als het veld `accepts` niet is ingesteld of geen geldige vermeldingen bevat, wordt dit altijd teruggezet naar `true`.

  • accepteertMeerdere

    boolean optioneel

    Of meerdere bestanden geaccepteerd moeten worden. Dit wordt alleen ondersteund voor openFile en openWritableFile. De callback-functie van chooseEntry wordt aangeroepen met een lijst met items als dit op true is ingesteld. Anders wordt deze aangeroepen met één enkel item.

  • voorgestelde naam

    string optioneel

    De voorgestelde bestandsnaam die aan de gebruiker wordt getoond als de standaardnaam voor het opslaan. Dit is optioneel en geldt alleen voor 'saveFile'.

  • type

    ChooseEntryType (optioneel)

    Het type prompt dat moet worden weergegeven. De standaardwaarde is 'openFile'.

ChooseEntryType

Enum

"openBestand"
De gebruiker wordt gevraagd een bestaand bestand te openen en bij succes wordt een FileEntry geretourneerd. Vanaf Chrome 31 is de FileEntry beschrijfbaar als de applicatie de 'write'-machtiging heeft onder 'fileSystem'; anders is de FileEntry alleen-lezen.

"openWritableFile"
Vraagt ​​de gebruiker om een ​​bestaand bestand te openen en retourneert een beschrijfbaar FileEntry-object bij succes. Aanroepen van dit type zullen een runtimefout opleveren als de applicatie niet de 'schrijf'-machtiging heeft onder 'fileSystem'.

"bestand opslaan"
Vraagt ​​de gebruiker om een ​​bestaand bestand of een nieuw bestand te openen en retourneert een beschrijfbaar FileEntry-object bij succes. Aanroepen van dit type zullen een runtimefout opleveren als de applicatie niet de 'schrijf'-machtiging heeft onder 'fileSystem'.

"openDirectory"
Vraagt ​​de gebruiker om een ​​map te openen en retourneert een DirectoryEntry bij succes. Aanroepen van dit type zullen een runtimefout opleveren als de applicatie niet de 'directory'-machtiging heeft onder 'fileSystem'. Als de applicatie de 'write'-machtiging heeft onder 'fileSystem', is de geretourneerde DirectoryEntry beschrijfbaar; anders is deze alleen-lezen. Nieuw in Chrome 31.

RequestFileSystemOptions

Chrome 44+

Eigenschappen

  • volumeId

    snaar

    De ID van het aangevraagde volume.

  • beschrijfbaar

    boolean optioneel

    Of het gevraagde bestandssysteem beschrijfbaar moet zijn. De standaardinstelling is alleen-lezen.

Volume

Chrome 44+

Eigenschappen

  • volumeId

    snaar

  • beschrijfbaar

    booleaans

VolumeListChangedEvent

Chrome 44+

Eigenschappen

Methoden

chooseEntry()

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

Vraag de gebruiker om een ​​bestand of map te kiezen.

Parameters

  • opties

    ChooseEntryOptions (optioneel )

  • terugbelverzoek

    functie

    De callback parameter ziet er als volgt uit:

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

    • invoer

      Toegang optioneel

    • bestandsitems

      FileEntry[] optioneel

getDisplayPath()

Belofte
chrome.fileSystem.getDisplayPath(
  entry: Entry,
  callback?: function,
)
: Promise<string>

Haal het weergavepad van een Entry-object op. Het weergavepad is gebaseerd op het volledige pad van het bestand of de map op het lokale bestandssysteem, maar kan leesbaarder gemaakt zijn voor weergavedoeleinden.

Parameters

  • invoer

    Invoer

  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (displayPath: string) => void

    • weergavepad

      snaar

Retourneert

  • Belofte<string>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

getVolumeList()

Promise Chrome 44+
chrome.fileSystem.getVolumeList(
  callback?: function,
)
: Promise<Volume[] | undefined>

Retourneert een lijst met volumes die beschikbaar zijn voor requestFileSystem() . De manifestmachtiging "fileSystem": {"requestFileSystem"} is vereist. Alleen beschikbaar voor kiosk-apps die in de kiosksessie draaien. In geval van een fout zijn volumes niet gedefinieerd en wordt chrome.runtime.lastError ingesteld.

Parameters

  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (volumes?: Volume[]) => void

Retourneert

  • Promise< Volume [] | undefined>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

getWritableEntry()

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

Een beschrijfbaar item ophalen uit een ander item. Deze aanroep mislukt met een runtimefout als de applicatie niet de 'schrijf'-machtiging heeft onder 'fileSystem'. Als 'entry' een DirectoryEntry is, mislukt deze aanroep als de applicatie niet de 'directory'-machtiging heeft onder 'fileSystem'.

Parameters

  • invoer

    Invoer

  • terugbelverzoek

    functie

    De callback parameter ziet er als volgt uit:

    (entry: Entry) => void

    • invoer

      Invoer

isRestorable()

Belofte
chrome.fileSystem.isRestorable(
  id: string,
  callback?: function,
)
: Promise<boolean>

Geeft aan of de app toestemming heeft om de vermelding met de opgegeven ID te herstellen.

Parameters

  • id

    snaar

  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (isRestorable: boolean) => void

    • isRestoreable

      booleaans

Retourneert

  • Belofte<boolean>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

isWritableEntry()

Belofte
chrome.fileSystem.isWritableEntry(
  entry: Entry,
  callback?: function,
)
: Promise<boolean>

Geeft aan of dit item beschrijfbaar is of niet.

Parameters

  • invoer

    Invoer

  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (isWritable: boolean) => void

    • isWritable

      booleaans

Retourneert

  • Belofte<boolean>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

requestFileSystem()

Promise Chrome 44+
chrome.fileSystem.requestFileSystem(
  options: RequestFileSystemOptions,
  callback?: function,
)
: Promise<FileSystem | undefined>

Vraagt ​​toegang aan tot een bestandssysteem voor een volume dat wordt weergegeven door options.volumeId . Als options.writable is ingesteld op true, is het bestandssysteem beschrijfbaar. Anders is het alleen-lezen. De optie writable ' vereist de machtiging "fileSystem": {"write"} in het manifest. Alleen beschikbaar voor kiosk-apps die in een kiosk-sessie draaien. Bij handmatige start in de kioskmodus wordt een bevestigingsdialoogvenster boven het actieve app-venster weergegeven. In geval van een fout is fileSystem niet gedefinieerd en wordt chrome.runtime.lastError ingesteld.

Parameters

  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (fileSystem?: FileSystem) => void

    • bestandssysteem

      Bestandssysteem optioneel

Retourneert

  • Promise<FileSystem | undefined>

    Chrome 117+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

restoreEntry()

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

Retourneert het bestand met de opgegeven ID als het kan worden hersteld. Deze aanroep zal anders mislukken met een runtimefout.

Parameters

  • id

    snaar

  • terugbelverzoek

    functie

    De callback parameter ziet er als volgt uit:

    (entry: Entry) => void

    • invoer

      Invoer

retainEntry()

chrome.fileSystem.retainEntry(
  entry: Entry,
)
: string

Retourneert een ID die kan worden doorgegeven aan restoreEntry om de toegang tot een bepaald bestandsitem te herstellen. Alleen de 500 meest recent gebruikte items worden bewaard, waarbij aanroepen naar retainEntry en restoreEntry als gebruik tellen. Als de app de machtiging 'retainEntries' heeft onder 'fileSystem', worden items onbeperkt bewaard. Anders worden items alleen bewaard zolang de app actief is en na herstarts.

Parameters

  • invoer

    Invoer

Retourneert

  • snaar

Evenementen

onVolumeListChanged

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

Wordt aangeroepen wanneer een lijst met beschikbare volumes wordt gewijzigd.

Parameters