Open In App

Node.js fs.filehandle.truncate() Method

Last Updated : 29 Dec, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

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  

Javascript




// 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 

Javascript




// 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



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads