FileSystemWritableFileStream
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.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die FileSystemWritableFileStream
-Schnittstelle der File System API ist ein WritableStream
-Objekt mit zusätzlichen Komfortmethoden, das auf einer einzelnen Datei auf der Festplatte arbeitet. Auf die Schnittstelle wird über die FileSystemFileHandle.createWritable()
-Methode zugegriffen.
Instanz-Eigenschaften
Erbt Eigenschaften von seinem übergeordneten Element WritableStream
.
Instanz-Methoden
Erbt Methoden von seinem übergeordneten Element WritableStream
.
FileSystemWritableFileStream.write()
-
Schreibt Inhalt in die Datei, auf die die Methode angewendet wird, an der aktuellen Cursorposition der Datei.
FileSystemWritableFileStream.seek()
-
Aktualisiert die aktuelle Cursorposition der Datei auf die angegebene Position (in Bytes).
FileSystemWritableFileStream.truncate()
-
Ändert die Größe der Datei, die mit dem Stream verbunden ist, auf die angegebene Größe in Bytes.
Beispiele
Die folgende asynchrone Funktion öffnet den 'Datei speichern'-Dialog, der einen FileSystemFileHandle
zurückgibt, sobald eine Datei ausgewählt ist. Daraus wird ein beschreibbarer Stream erstellt, indem die FileSystemFileHandle.createWritable()
-Methode verwendet wird.
Ein Textstring wird dann in den Stream geschrieben, der danach geschlossen wird.
async function saveFile() {
// create a new handle
const newHandle = await window.showSaveFilePicker();
// create a FileSystemWritableFileStream to write to
const writableStream = await newHandle.createWritable();
// write our file
await writableStream.write("This is my file content");
// close the file and write the contents to disk.
await writableStream.close();
}
Die folgenden Beispiele zeigen verschiedene Optionen, die in die write()
-Methode übergeben werden können.
// just pass in the data (no options)
writableStream.write(data);
// writes the data to the stream from the determined position
writableStream.write({ type: "write", position, data });
// updates the current file cursor offset to the position specified
writableStream.write({ type: "seek", position });
// resizes the file to be size bytes long
writableStream.write({ type: "truncate", size });
Spezifikationen
Specification |
---|
File System Standard # api-filesystemwritablefilestream |
Browser-Kompatibilität
BCD tables only load in the browser