The fs.filehandle.truncate() method is an inbuilt application programming interface of class fs.filehandle within File System module which is used to truncate the particular file object and only that much byte will be retained which passed as an integer in truncate() method.
Syntax:
const filehandle.truncate(len)
Parameter: This method takes the length of bytes till which this file has to be truncated.
Return value: This method returns an pending promise which contains no value in it.
Below programs illustrates the use of fs.filehandle.truncate() method in Node.js:
Example 1: Filename: index.js
// Node.js program to demonstrate the // filehandle.truncate() method const fs = require( 'fs' );
const fsPromises = fs.promises; // Initiating asynchronise function async function funct() {
// Initializing following variables
let filehandle = null ;
let prom = null ;
try {
// Data before operation
console.log( "data before operation: " +
fs.readFileSync( 'example.txt' , 'utf8' ));
// Creating and initiating filehandle
filehandle = await
fsPromises.open( 'example.txt' , 'r+' );
// Truncating the file
// by using truncate() method
prom = filehandle.truncate(5);
} finally {
if (filehandle) {
// Data after operation
console.log( "data after operation: " +
fs.readFileSync( 'example.txt' , 'utf8' ));
// Close the file if it is opened.
await filehandle.close();
}
}
} funct(). catch (console.error);
|
Run index.js file using the following command:
node index.js
Output:
data before operation: ABCDEFGHIJK data after operation: ABCDE
Example 2: Filename: index.js
// Node.js program to demonstrate the // filehandle.truncate() method const fs = require( 'fs' );
const fsPromises = fs.promises; // Data for the new file let data = "This is a file containing "
+ "a collection of books." ;
// Name of the file to be created let file = "books.txt" ;
// Creating the new file 'books.txt' fs.writeFile(file, data, (err) => { // Catching error
if (err) {
console.log(err);
}
}); // Using fs.exists() method fs.exists(file, (exists) => { if (exists) {
console.log(
"content of file before operation: "
+ (fs.readFileSync(file)));
}
}); // Initiating asynchronise function async function funct() {
// Initializing filehandle
let filehandle = null ;
try {
// Creating and initiating filehandle
filehandle = await fsPromises.open(file, 'r+' );
// Truncating the file
// by using truncate() method
prom = filehandle.truncate(4);
} finally {
if (filehandle) {
// Close the file if it is opened.
console.log(
"content of file after operation: "
+ (fs.readFileSync(file)));
await filehandle.close();
}
}
} funct(). catch (console.error);
|
Directory structure before running the program:
Directory structure after running the program:
Run index.js file using the following command:
node index.js
Output:
content of file before operation: This is a file containing a collection of books. content of file after operation: This
NOTE: The above program will not run on online JavaScript and script editor.
Reference: https://nodejs.org/dist/latest-v12.x/docs/api/fs.html#fs_filehandle_truncate_len