ftruncate method

Future<void> ftruncate(
  1. num rid, [
  2. num? len
])

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 = await Deno.open(
  "my_file.txt",
  { read: true, write: true, create: true }
);
await Deno.ftruncate(file.rid);

Truncate part of the file

const file = await Deno.open(
  "my_file.txt",
  { read: true, write: true, create: true }
);
await Deno.write(file.rid, new TextEncoder().encode("Hello World"));
await Deno.ftruncate(file.rid, 7);
const data = new Uint8Array(32);
await Deno.read(file.rid, data);
console.log(new TextDecoder().decode(data)); // Hello W

Implementation

_i2.Future<void> ftruncate(
  _i2.num rid, [
  _i2.num? len,
]) =>
    _i3.promiseToFuture(_i3.callMethod(
      this,
      'ftruncate',
      [
        rid,
        len ?? _i6.undefined,
      ],
    ));