FileSystemWritableFileStream: seek()-Methode
Baseline
2025
Neu verfügbar
Seit September 2025 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
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 seek()-Methode der FileSystemWritableFileStream-Schnittstelle aktualisiert den aktuellen Dateicurser-Offset auf die beim Aufruf der Methode angegebene Position (in Byte).
Syntax
seek(position)
Parameter
position-
Eine Zahl, die die Byte-Position vom Anfang der Datei angibt.
Rückgabewert
Ein Promise, das undefined zurückgibt.
Ausnahmen
NotAllowedErrorDOMException-
Wird ausgelöst, wenn
PermissionStatus.statenichtgrantedist. TypeError-
Wird ausgelöst, wenn
positionkeine Zahl ist oder nicht definiert wurde.
Beispiele
Die folgende asynchrone Funktion öffnet den 'Datei speichern'-Auswahldialog, der ein FileSystemFileHandle zurückgibt, sobald eine Datei ausgewählt wurde. Daraus wird mit der Methode FileSystemFileHandle.createWritable() ein beschreibbarer Stream erstellt.
Anschließend schreiben wir in den Stream:
- Eine Textzeichenfolge wird in den Stream geschrieben.
- Die
seek()-Methode wird verwendet, um den Cursor an den Anfang des Streams zu setzen. - Eine zweite Textzeichenfolge wird an den Anfang des Streams geschrieben und überschreibt das erste Schreiben.
Der Stream wird dann geschlossen.
async function saveFile() {
try {
// 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("My first file content");
await writableStream.seek(0);
await writableStream.write("My second file content");
// close the file and write the contents to disk.
await writableStream.close();
} catch (err) {
console.error(err.name, err.message);
}
}
Wenn Sie die obige Funktion ausführen und dann die auf der Festplatte erstellte Datei öffnen, sollten Sie den Text "My second file content" sehen.
Spezifikationen
| Spezifikation |
|---|
| File System> # api-filesystemwritablefilestream-seek> |