Node.js fs.filehandle.datasync() Method
The fs.filehandle.datasync() method is an inbuilt application programming interface of class fs.filehandle within File System module which is used to sync the data of the file.
Syntax:
const filehandle.datasync()
Parameter: This method does not accept any parameter.
Return value: This method returns an pending promise which contain no value in it.
Below programs illustrates the use of fs.filehandle.datasync() method.
Example 1: Filename: index.js
Javascript
// Node program to demonstrate the // filehandle.datasync() method const fs = require( 'fs' ); const fsPromises = fs.promises; console.log( "File content before operation: " + (fs.readFileSync( 'example.txt' ))); // Initiating asynchronise function async function funct() { // Initializing filehandle let filehandle = null ; try { // Creating and initiating filehandle filehandle = await fsPromises.open( 'example.txt' , 'r+' ); // Syncing the data by using // datasync() method await filehandle.datasync(); } finally { if (filehandle) { // Close the file if it is opened. console.log( "data synced successfully" ); console.log( "Content after operation: " + (fs.readFileSync( 'example.txt' ))); await filehandle.close(); } } } funct(). catch (console.error); |
Directory structure of the program:
Run index.js file using the following command:
node index.js
Output:
File content before operation: Content of the example.txt file data synced successfully Content after operation: Content of the example.txt file
Example 2: Filename: index.js
Javascript
// Node.js program to demonstrate the // filehandle.datasync() 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+' ); // Syncing the data by using // datasync() method await filehandle.datasync(); } finally { if (filehandle) { // Close the file if it is opened. console.log( "data synced successfully" ); console.log( "content of file after" + " operation: " + (fs.readFileSync(file))); await filehandle.close(); } } } funct(). catch (console.error); |
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 synced successfully content of file after operation: This is a file containing a collection of books.
Directory structure before running the program:
Directory structure after running the program:
Reference: https://nodejs.org/dist/latest-v12.x/docs/api/fs.html#fs_filehandle_datasync