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

View in English Always switch to English

FileSystemSyncAccessHandle: truncate()-Methode

Baseline 2023
Newly available

Since ⁨March 2023⁩, 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 in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Hinweis: Diese Funktion ist nur in Dedicated Web Workers verfügbar.

Die truncate()-Methode der Schnittstelle FileSystemSyncAccessHandle ändert die Größe der Datei, die mit dem Handle verknüpft ist, auf eine bestimmte Anzahl von Bytes.

Hinweis: In früheren Versionen der Spezifikation wurden close(), flush(), getSize() und truncate() fälschlicherweise als asynchrone Methoden angegeben, und ältere Versionen einiger Browser implementieren sie auf diese Weise. Alle aktuellen Browser, die diese Methoden unterstützen, implementieren sie jedoch als synchrone Methoden.

Syntax

js
truncate(newSize)

Parameter

newSize

Die Anzahl der Bytes, auf die die Datei geändert werden soll.

Rückgabewert

Keiner (undefined).

Ausnahmen

InvalidStateError DOMException

Wird ausgelöst, wenn das zugehörige Zugriffshandle bereits geschlossen ist oder wenn die Änderung der binären Daten der Datei auf andere Weise fehlschlägt.

QuotaExceededError

Wird ausgelöst, wenn newSize größer ist als die ursprüngliche Dateigröße und das Speicherkontingent des Browsers überschreitet.

TypeError

Wird ausgelöst, wenn das zugrunde liegende Dateisystem das Setzen der Dateigröße auf die neue Größe nicht unterstützt.

Beispiele

js
async function truncateFile() {
  // Get handle to draft file
  const root = await navigator.storage.getDirectory();
  const draftHandle = await root.getFileHandle("draft.txt", { create: true });
  // Get sync access handle
  const accessHandle = await draftHandle.createSyncAccessHandle();

  // Truncate the file to 0 bytes
  accessHandle.truncate(0);

  // Persist changes to disk.
  accessHandle.flush();

  // Always close FileSystemSyncAccessHandle if done.
  accessHandle.close();
}

Spezifikationen

Specification
File System
# api-filesystemsyncaccesshandle-truncate

Browser-Kompatibilität

Siehe auch