Open In App

Node.js fs.filehandle.sync() Method

The fs.filehandle.sync() method is an inbuilt application programming interface of class fs.filehandle within File System module which is used to synchronize this file’s in-core state with the storage device.
Syntax: 
 

const filehandle.sync()

Parameter: This method does not accept any argument as parameter.
Return Value: This method returns a pending promise which contains no value in it.
Below programs illustrates the use of fs.filehandle.sync() method.
Example 1: Filename: index.js 
 






// Node.js program to demonstrate the
// filehandle.sync() method
const fs = require('fs');
const fsPromises = fs.promises;
 
console.log("content of file before operation :- "
        + (fs.readFileSync('example.txt')));
 
// Initiating asynchronise function
async function funct() {
 
    // Initializing following variables
    let filehandle = null;
    let prom = null;
 
    try {
 
        // Creating and initiating filehandle
        filehandle = await
            fsPromises.open('example.txt', 'r+');
 
        // Synchronizing the file's in-core state
        // by using sync() method
        prom = filehandle.sync();
 
    } finally {
 
        if (filehandle) {
 
            // Display the result
            console.log("data is synchronized successfully");
            console.log("content of file after operation :- "
                    + (fs.readFileSync('example.txt')));
 
            // Close the file if it is opened.
            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 :- Content of file: example.txt
data is synchronized successfully
content of file after operation :- Content of file: example.txt

Example 2: Filename: index.js 
 




// Node.js program to demonstrate the
// filehandle.sync() 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+');
 
        // Synchronizing the file's in-core
        // state by using sync() method
        prom = filehandle.sync();
 
    } finally {
 
        if (filehandle) {
 
            // Close the file if it is opened.
            console.log("data is synchronized"
                    + " successfully");
 
            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. 
data is synchronized successfully 
content of file after operation :- This is a file containing a collection of books. 
 

Reference: https://nodejs.org/dist/latest-v12.x/docs/api/fs.html#fs_filehandle_sync
 


Article Tags :