logo

Node.js fs.writeFileSync() metode

Metode fs.writeFileSync() ir sinhrona metode. Tas izveido jaunu failu, ja norādītais fails neeksistē. Arī “readline-Sync” modulis tiek izmantots, lai iespējotu lietotāja ievadi izpildes laikā.

Node.js modulis “fs” ievieš failu I/O darbību. Fs moduļa metodes var būt gan sinhronas, gan asinhronas. Asinhronajai funkcijai ir atzvanīšanas funkcija kā pēdējais parametrs, kas norāda uz asinhronās funkcijas pabeigšanu. Node.js izstrādātāji dod priekšroku asinhronām metodēm, nevis sinhronām metodēm, jo ​​asinhronās metodes nekad nebloķē programmu tās izpildes laikā, savukārt pēdējās to dara.



Galvenā pavediena bloķēšana ir Node.js pārkāpums, tāpēc sinhronās funkcijas ir jāizmanto tikai atkļūdošanai vai gadījumos, kad nav pieejamas citas iespējas.

Sintakse:

fs.writeFileSync( file, data, options )>

Parametri: Šī metode pieņem trīs parametrus, kā minēts iepriekš un aprakstīts tālāk:



    fails: tā ir virkne, buferis, URL vai faila apraksta vesels skaitlis, kas apzīmē faila ceļu, kur tas ir jāraksta. Izmantojot faila deskriptoru, tas darbosies līdzīgi fs.write() metodei. dati: tā ir virkne, buferis, TypedArray vai DataView, kas tiks ierakstīts failā. opcijas: tā ir virkne vai objekts, ko var izmantot, lai norādītu izvēles parametrus, kas ietekmēs izvadi. Tam ir trīs izvēles parametri:
      kodējums: tā ir virkne, kas norāda faila kodējumu. Noklusējuma vērtība ir “utf8”. režīms: tas ir vesels skaitlis, kas norāda faila režīmu. Noklusējuma vērtība ir 0o666. karodziņš: tā ir virkne, kas norāda karodziņu, kas tiek izmantots, rakstot failā. Noklusējuma vērtība ir “w”.

Zemāk esošie piemēri ilustrē fs.writeFileSync() metode vietnē Node.js.

1. piemērs:

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'>));>

verilog parametrs

>

>

Izvade:

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>

2. piemērs:

javascript


atšķirība starp vakariņām un vakariņām



// 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'>));>

>

>

Izvade:

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

3. piemērs: Izpildlaika ievades ņemšana no lietotājiem faila nosaukumam un faila datiem, izmantojot lasīšanas līnijas moduli

javascript

b+ koki




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);> }>

>

>

Izvade

4. piemērs: Izpildlaika ievades ņemšana no lietotājiem faila datiem, izmantojot lasīšanas līnijas moduli, izmantojot buferi.

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);> }>

stīgu savienošana

>

>

Izvade

Atsauce: https://nodejs.org/api/fs.html#fs_fs_writefilesync_file_data_options