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
InvalidStateError
DOMException
-
Thrown if the associated access handle is already closed, or if the modification of the file's binary data otherwise fails.
QuotaExceededError
DOMException
-
Thrown if the
newSize
is 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