Node.js Leggi in modo asincrono dai file


Esempio

Usa il modulo del filesystem per tutte le operazioni sui file:

const fs = require('fs');

Con codifica

In questo esempio, leggi hello.txt dalla directory /tmp . Questa operazione sarà completata in background e il callback si verifica al completamento o al fallimento:

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

Senza codifica

Leggi il file binary.txt binario dalla directory corrente, in modo asincrono sullo sfondo. Nota che non impostiamo l'opzione 'encoding' - questo impedisce a Node.js di decodificare il contenuto in una stringa:

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

Percorsi relativi

Tieni presente che, in generale, lo script può essere eseguito con una directory di lavoro corrente arbitraria. Per indirizzare un file relativo allo script corrente, usa __dirname o __filename :

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