Limited availability
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 truncate()
-Methode der FileSystemWritableFileStream
-Schnittstelle ändert die GröÃe der mit dem Stream verbundenen Datei auf die angegebene GröÃe in Bytes.
Wenn die angegebene GröÃe gröÃer ist als die aktuelle DateigröÃe, wird die Datei mit 0x00
-Bytes aufgefüllt.
Der Dateicursor wird ebenfalls aktualisiert, wenn truncate()
aufgerufen wird. Wenn der Offset kleiner als die GröÃe ist, bleibt er unverändert. Wenn der Offset gröÃer als die GröÃe ist, wird der Offset auf diese GröÃe gesetzt. Dies stellt sicher, dass nachfolgende Schreibvorgänge keinen Fehler verursachen.
Es werden keine Ãnderungen tatsächlich auf die Datei auf dem Datenträger geschrieben, bis der Stream geschlossen wurde. Ãnderungen werden typischerweise stattdessen in eine temporäre Datei geschrieben.
Syntax Parametersize
Eine Zahl, die die Anzahl der Bytes angibt, auf die der Stream verkleinert werden soll.
Ein Promise
, das undefined
zurückgibt.
NotAllowedError
DOMException
Wird ausgelöst, wenn PermissionStatus.state
nicht granted
ist.
QuotaExceededError
DOMException
Wird ausgelöst, wenn die neue GröÃe der Datei gröÃer ist als die ursprüngliche DateigröÃe und das Speicherlimit des Browsers überschreitet Speicherquota.
TypeError
Wird ausgelöst, wenn size
keine Zahl ist oder nicht definiert wurde.
Die folgende asynchrone Funktion öffnet den 'Datei speichern'-Auswahldialog, der einen FileSystemFileHandle
zurückgibt, sobald eine Datei ausgewählt wurde. Daraus wird ein beschreibbarer Stream unter Verwendung der FileSystemFileHandle.createWritable()
-Methode erstellt.
AnschlieÃend schreiben wir in den Stream:
truncate()
-Methode wird verwendet, um die Datei auf 8 Bytes zu verkleinern.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("This is my first file content");
await writableStream.truncate(8);
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 resultierende Datei, die auf dem Datenträger erstellt wurde, öffnen, sollten Sie den Text "This is my second file content" sehen.
Spezifikationen Browser-Kompatibilität Siehe auch MDN-Feedback-Box War diese Ãbersetzung hilfreich?Diese Seite wurde automatisch aus dem Englischen übersetzt.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4