Node.js Escribir en un archivo usando writeFile o writeFileSync


Ejemplo

var fs = require('fs');

// Save the string "Hello world!" in a file called "hello.txt" in
// the directory "/tmp" using the default encoding (utf8).
// This operation will be completed in background and the callback
// will be called when it is either done or failed.
fs.writeFile('/tmp/hello.txt', 'Hello world!', function(err) {
  // If an error occurred, show it and return
  if(err) return console.error(err);
  // Successfully wrote to the file!
});

// Save binary data to a file called "binary.txt" in the current
// directory. Again, the operation will be completed in background.
var buffer = new Buffer([ 0x48, 0x65, 0x6c, 0x6c, 0x6f ]);
fs.writeFile('binary.txt', buffer, function(err) {
  // If an error occurred, show it and return
  if(err) return console.error(err);
  // Successfully wrote binary contents to the file!
});

fs.writeFileSync comporta de manera similar a fs.writeFile , pero no recibe una devolución de llamada ya que se completa de forma síncrona y, por lo tanto, bloquea el subproceso principal. La mayoría de los desarrolladores de node.js prefieren las variantes asíncronas que prácticamente no causarán demoras en la ejecución del programa.

Nota: bloquear el hilo principal es una mala práctica en node.js. La función síncrona solo se debe utilizar al depurar o cuando no hay otras opciones disponibles.

// Write a string to another file and set the file mode to 0755
try {
  fs.writeFileSync('sync.txt', 'anni', { mode: 0o755 });
} catch(err) {
  // An error occurred
  console.error(err);
}