Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Window: showSaveFilePicker() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die showSaveFilePicker() Methode der Window-Schnittstelle zeigt einen Dateiauswahldialog, der es einem Benutzer ermöglicht, eine Datei zu speichern, entweder durch Auswahl einer vorhandenen Datei oder durch Eingabe eines Namens für eine neue Datei.

Syntax

js
showSaveFilePicker()
showSaveFilePicker(options)

Parameter

options Optional

Ein Objekt, das Optionen enthält, die wie folgt sind:

excludeAcceptAllOption Optional

Ein Boolescher Wert, der standardmäßig auf false gesetzt ist. Standardmäßig sollte der Picker eine Option enthalten, um keine Dateitypenfilter anzuwenden (ausgelöst durch die untenstehende Typoption). Wenn diese Option auf true gesetzt wird, ist diese Option nicht verfügbar.

id Optional

Durch die Angabe einer ID kann sich der Browser verschiedene Verzeichnisse für verschiedene IDs merken. Wenn dieselbe ID für einen anderen Picker verwendet wird, öffnet sich der Picker im selben Verzeichnis.

startIn Optional

Ein FileSystemHandle oder ein bekanntes Verzeichnis ("desktop", "documents", "downloads", "music", "pictures" oder "videos") um den Dialog darin zu öffnen.

suggestedName Optional

Ein String. Der vorgeschlagene Dateiname.

types Optional

Ein Array der erlaubten Dateitypen zum Speichern. Jedes Element ist ein Objekt mit den folgenden Optionen:

description Optional

Eine optionale Beschreibung der Kategorie der erlaubten Dateitypen. Standardwert ist ein leerer String.

accept

Ein Object mit den Schlüsseln, die auf den MIME-Typen eingestellt sind, und den Werten, die ein Array von Dateierweiterungen sind (siehe unten für ein Beispiel).

Rückgabewert

Ein Promise, dessen Erfüllungshandler ein FileSystemFileHandle-Objekt erhält.

Ausnahmen

AbortError DOMException

Wird ausgelöst, wenn der Benutzer den Dateiauswahldialog ohne Auswahl oder Eingabe einer Datei schließt oder wenn der Benutzeragent eine ausgewählte Datei als zu sensibel oder gefährlich einstuft.

SecurityError DOMException

Wird ausgelöst, wenn der Aufruf durch die Same-Origin-Policy blockiert wurde oder wenn er nicht durch eine Benutzerinteraktion wie einen Tastendruck ausgelöst wurde.

TypeError

Wird ausgelöst, wenn Akzeptanztypen nicht verarbeitet werden können, was passieren kann, wenn:

  • Ein Schlüsselstring der accept-Optionen eines Elements in den types-Optionen keinen gültigen MIME-Typ parsen kann.
  • Ein Wertstring der accept-Optionen eines Elements in den types-Optionen ungültig ist, zum Beispiel, wenn er nicht mit . beginnt, mit . endet oder ungültige Codepunkte enthält und seine Länge mehr als 16 ist.
  • Die types-Optionen leer sind und die excludeAcceptAllOption-Optionen true sind.

Sicherheit

Eine vorübergehende Benutzerauslösung ist erforderlich. Der Benutzer muss mit der Seite oder einem UI-Element interagieren, damit diese Funktion funktioniert.

Beispiele

Die folgende Funktion zeigt einen Dateiauswahldialog, wobei Textdateien zur Auswahl hervorgehoben sind.

js
async function getNewFileHandle() {
  const opts = {
    types: [
      {
        description: "Text file",
        accept: { "text/plain": [".txt"] },
      },
    ],
  };
  return await window.showSaveFilePicker(opts);
}

Spezifikationen

Specification
File System Access
# api-showsavefilepicker

Browser-Kompatibilität

Siehe auch