logo

Méthode Node.js fs.writeFileSync()

La méthode fs.writeFileSync() est une méthode synchrone. Il crée un nouveau fichier si le fichier spécifié n'existe pas. De plus, le module « readline-sync » est utilisé pour activer la saisie utilisateur au moment de l'exécution.

Le module 'fs' de Node.js implémente l'opération File I/O. Les méthodes du module fs peuvent être synchrones ou asynchrones. La fonction asynchrone a une fonction de rappel comme dernier paramètre qui indique l'achèvement de la fonction asynchrone. Les développeurs Node.js préfèrent les méthodes asynchrones aux méthodes synchrones, car les méthodes asynchrones ne bloquent jamais un programme lors de son exécution, contrairement à ces dernières.



Le blocage du thread principal est une faute professionnelle dans Node.js, donc les fonctions synchrones ne doivent être utilisées que pour le débogage ou lorsqu'aucune autre option n'est disponible.

Syntaxe:

fs.writeFileSync( file, data, options )>

Paramètres: Cette méthode accepte trois paramètres mentionnés ci-dessus et décrits ci-dessous :



    fichier : il s'agit d'une chaîne, d'un tampon, d'une URL ou d'un entier de description de fichier qui indique le chemin du fichier où il doit être écrit. L'utilisation d'un descripteur de fichier le fera se comporter de la même manière que la méthode fs.write(). data : Il s'agit d'une chaîne, d'un Buffer, d'un TypedArray ou d'un DataView qui sera écrit dans le fichier. options : il s'agit d'une chaîne ou d'un objet qui peut être utilisé pour spécifier des paramètres facultatifs qui affecteront la sortie. Il comporte trois paramètres facultatifs :
      encodage : C'est une chaîne qui spécifie l'encodage du fichier. La valeur par défaut est « utf8 ». mode : C'est un entier qui spécifie le mode du fichier. La valeur par défaut est 0o666. flag : C'est une chaîne qui spécifie l'indicateur utilisé lors de l'écriture dans le fichier. La valeur par défaut est « w ».

Les exemples ci-dessous illustrent Méthode fs.writeFileSync() dans Node.js.

Exemple 1:

javascript






// Node.js program to demonstrate the> // fs.writeFileSync() method> > // Import the filesystem module> const fs = require(>'fs'>);> > let data =>'This is a file containing a collection'> >+>' of programming languages. '> >+>'1. C 2. C++ 3. Python'>;> > fs.writeFileSync(>'programming.txt'>, data);> console.log(>'File written successfully '>);> console.log(>'The written has the following contents:'>);> console.log(fs.readFileSync(>'programming.txt'>,>'utf8'>));>

comment convertir un caractère en chaîne Java

>

>

Sortir:

File written successfully The written has the following contents: This is a file containing a collection of programming languages. 1. C 2. C++ 3. Python>

Exemple 2 :

javascript




couche réseau dans les réseaux informatiques
// Node.js program to demonstrate the> // fs.writeFileSync() method> > // Import the filesystem module> const fs = require(>'fs'>);> > // Writing to the file 5 times> // with the append file mode> for> (let i = 0; i <5; i++) {> >fs.writeFileSync(>'movies.txt'>,> >'Movie '> + i +>' '>,> >{> >encoding:>'utf8'>,> >flag:>'a+'>,> >mode: 0o666> >});> }> > console.log(>'File written successfully 5 times '>);> console.log(>'The written file has the following contents:'>);> console.log(fs.readFileSync(>'movies.txt'>,>'utf8'>));>

>

>

Sortir:

File written successfully 5 times The written file has the following contents: Movie 0 Movie 1 Movie 2 Movie 3 Movie 4>

Exemple 3 : Prendre les entrées d'exécution des utilisateurs pour le nom de fichier et les données de fichier à l'aide du module readline

javascript


qu'est-ce que le hashmap Java



let readline = require(>'readline-sync'>);> let fs = require(>'fs'>);> > let path = readline.question(>'Enter file name/path: '>);> > console.log(>'Entered path : '> + path);> > let data = readline.question(>'Enter file data: '>);> > //synchronous functions may throw errors> //which can be handled using try-catch block> try> {> >fs.writeFileSync(path, data, { flag:>'a+'> });>//'a+' is append mode> >console.log(>'File written successfully'>);> }>catch> (err) {> >console.error(err);> }> console.log(>'-----------------------------------------------'>);> try> {> >const data = fs.readFileSync(path, { encoding:>'utf8'> });> >console.log(>'File content is as follows:'>);> >// Display the file data> >console.log(data);> }>catch> (err) {> >console.log(err);> }>

>

>

Sortir

Exemple 4 : Prise des entrées d'exécution des utilisateurs pour les données de fichiers à l'aide du module readline à l'aide du tampon.

javascript




let fs = require(>'fs'>);> let readline = require(>'readline-sync'>);> let path = readline.question(>'Enter file name/path: '>);> > console.log(>'Entered path : '> + path);> > // 1024 specifies the buffer size. We can limit> // the data size by this approach> let buf =>new> Buffer.alloc(1024);> buf = readline.question(>'Enter data:'>);> > > try> {> >fs.writeFileSync(path, buf, { flag:>'a+'> });> >console.log(>'File written successfully'>);> }>catch> (err) {> >console.error(err);> }> console.log(>'-----------------------------------------------'>);> try> {> >const data = fs.readFileSync(path, { encoding:>'utf8'> });> >console.log(>'File content is as follows:'>);> >// Display the file data> >console.log(data);> }>catch> (err) {> >console.log(err);> }>

bouton central en CSS

>

>

Sortir

Référence: https://nodejs.org/api/fs.html#fs_fs_writefilesync_file_data_options