ftruncateSync method

void ftruncateSync(
  1. num rid, [
  2. num? len
])

Synchronously truncates or extends the specified file stream, to reach the specified len.

If len is not specified then the entire file contents are truncated as if len was set to 0.

If the file previously was larger than this new length, the extra data is lost.

If the file previously was shorter, it is extended, and the extended part reads as null bytes ('\0').

Truncate the entire file

const file = Deno.openSync(
  "my_file.txt",
  { read: true, write: true, truncate: true, create: true }
);
Deno.ftruncateSync(file.rid);

Truncate part of the file

const file = Deno.openSync(
 "my_file.txt",
 { read: true, write: true, create: true }
);
Deno.writeSync(file.rid, new TextEncoder().encode("Hello World"));
Deno.ftruncateSync(file.rid, 7);
Deno.seekSync(file.rid, 0, Deno.SeekMode.Start);
const data = new Uint8Array(32);
Deno.readSync(file.rid, data);
console.log(new TextDecoder().decode(data)); // Hello W

Implementation

void ftruncateSync(
  _i2.num rid, [
  _i2.num? len,
]) {
  _i3.callMethod(
    this,
    'ftruncateSync',
    [
      rid,
      len ?? _i6.undefined,
    ],
  );
}