Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Web-APIs
  3. FileSystemWritableFileStream
  4. write()

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

View in EnglishAlways switch to English

FileSystemWritableFileStream: write()-Methode

Baseline 2025
Newly available

Since ⁨September 2025⁩, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

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

Hinweis: Diese Funktion ist inWeb Workers verfügbar.

Diewrite()-Methode desFileSystemWritableFileStream-Interfaces schreibt Inhalte in die Datei, auf die die Methode aufgerufen wird, an der aktuellen Dateicursor-Position.

Keine Änderungen werden auf die tatsächliche Datei auf der Festplatte geschrieben, bis der Stream geschlossen wurde. Änderungen werden typischerweise stattdessen in eine temporäre Datei geschrieben. Diese Methode kann auch verwendet werden, um zu einem Byte-Punkt innerhalb des Streams zu suchen und ihn zu kürzen, um die Gesamtanzahl der Bytes, die die Datei enthält, zu ändern.

Syntax

js
write(data)

Parameter

data

Kann eines der folgenden sein:

  • Die Dateidaten, die in Form einesArrayBuffer,TypedArray,DataView,Blob oder Strings geschrieben werden sollen.
  • Ein Objekt, das die folgenden Eigenschaften enthält:
    type

    Ein String, der entweder"write","seek" oder"truncate" ist.

    data

    Die Dateidaten, die geschrieben werden sollen. Kann einArrayBuffer,TypedArray,DataView,Blob oder String sein. Diese Eigenschaft ist erforderlich, wenntype auf"write" gesetzt ist.

    position

    Die Byte-Position, zu der der aktuelle Dateicursor bewegt werden soll, wenntype auf"seek" gesetzt ist. Kann auch gesetzt werden, wenntype auf"write" ist, wobei das Schreiben an der angegebenen Position beginnt.

    size

    Eine Zahl, die die Anzahl der Bytes repräsentiert, die der Stream enthalten soll. Diese Eigenschaft ist erforderlich, wenntype auf"truncate" gesetzt ist.

Rückgabewert

EinPromise dasundefined zurückgibt.

Ausnahmen

NotAllowedErrorDOMException

Ausgelöst, wennPermissionStatus.state nichtgranted ist.

QuotaExceededError

Ausgelöst, wenn die neue Größe der Datei größer ist als die ursprüngliche Größe der Datei und dasSpeicherlimit des Browsers überschreitet.

TypeError

Ausgelöst, wenndata undefiniert ist oder wennposition odersize ungültig sind.

Beispiele

Die folgende asynchrone Funktion öffnet den 'Datei speichern'-Picker, der einenFileSystemFileHandle zurückgibt, sobald eine Datei ausgewählt ist. Daraus wird ein schreibbarer Stream erstellt, indem die MethodeFileSystemFileHandle.createWritable() verwendet wird.

Ein Textstring wird dann in den Stream geschrieben, welcher anschließend geschlossen wird.

js
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("This is my file content");    // close the file and write the contents to disk.    await writableStream.close();  } catch (err) {    console.error(err.name, err.message);  }}

Die folgenden Beispiele zeigen verschiedene Optionen, die an diewrite()-Methode übergeben werden können.

js
// just pass in the data (no options)writableStream.write(data);// writes the data to the stream from the determined positionwritableStream.write({ type: "write", position, data });// updates the current file cursor offset to the position specifiedwritableStream.write({ type: "seek", position });// resizes the file to be size bytes longwritableStream.write({ type: "truncate", size });

Spezifikationen

Specification
File System
# api-filesystemwritablefilestream-write

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp