FileSystemSyncAccessHandle: truncate() method
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.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is only available in Dedicated Web Workers.
The truncate() method of the
FileSystemSyncAccessHandle interface resizes the file associated with the handle to a specified number of bytes.
Syntax
truncate(newSize)
Parameters
newSize-
The number of bytes to resize the file to.
Return value
None (undefined).
Exceptions
InvalidStateErrorDOMException-
Thrown if the associated access handle is already closed, or if the modification of the file's binary data otherwise fails.
QuotaExceededErrorDOMException-
Thrown if the
newSizeis larger than the original size of the file, and exceeds the browser's storage quota. TypeError-
Thrown if the underlying file system does not support setting the file size to the new size.
Examples
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();
}
Specifications
| Specification |
|---|
| File System Standard # api-filesystemsyncaccesshandle-truncate |
Browser compatibility
BCD tables only load in the browser