FileSystemSyncAccessHandle: truncate() method
The truncate()
method of the FileSystemSyncAccessHandle
interface resizes the file associated with the handle to a specified number of bytes.
Note: In earlier versions of the spec, close()
, flush()
, getSize()
, and truncate()
were wrongly specified as asynchronous methods, and older versions of some browsers implement them in this way. However, all current browsers that support these methods implement them as synchronous methods.
Syntax
Parameters
-
newSize
-
The number of bytes to resize the file to.
Return value
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.
Examples
async function truncateFile() {
const root = await navigator.storage.getDirectory();
const draftHandle = await root.getFileHandle("draft.txt", { create: true });
const accessHandle = await draftHandle.createSyncAccessHandle();
accessHandle.truncate(0);
accessHandle.flush();
accessHandle.close();
}
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
truncate |
102 |
102 |
111 |
No |
88 |
15.2 |
109 |
109 |
111 |
74 |
15.2 |
21.0 |
sync_version |
108 |
108 |
111 |
No |
94 |
16.4 |
109 |
109 |
111 |
74 |
16.4 |
21.0 |
See also