Node.js Lectura asincrónica de archivos


Ejemplo

Utilice el módulo del sistema de archivos para todas las operaciones de archivos:

const fs = require('fs');

Con codificacion

En este ejemplo, lea hello.txt del directorio /tmp . Esta operación se completará en segundo plano y la devolución de llamada se produce al finalizar o fallar:

fs.readFile('/tmp/hello.txt', { encoding: 'utf8' }, (err, content) => {
  // If an error occurred, output it and return
  if(err) return console.error(err);

  // No error occurred, content is a string
  console.log(content);
});

Sin codificar

Lea el archivo binario binary.txt del directorio actual, de forma asíncrona en segundo plano. Tenga en cuenta que no configuramos la opción de 'codificación', esto evita que Node.js decodifique el contenido en una cadena:

fs.readFile('binary', (err, binaryContent) => {
  // If an error occurred, output it and return
  if(err) return console.error(err);

  // No error occurred, content is a Buffer, output it in
  // hexadecimal representation.
  console.log(content.toString('hex'));
});

Caminos relativos

Tenga en cuenta que, en general, su secuencia de comandos podría ejecutarse con un directorio de trabajo actual arbitrario. Para tratar un archivo relacionado con el script actual, use __dirname o __filename :

fs.readFile(path.resolve(__dirname, 'someFile'), (err, binaryContent) => {
  //Rest of Function
}