从文件异步读取

使用 filesystem 模块进行所有文件操作:

const fs = require('fs');

使用编码

在此示例中,从/tmp 目录中读取 hello.txt。此操作将在后台完成,并在完成或失败时进行回调:

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

没有编码

从当前目录中读取二进制文件 binary.txt,在后台异步。请注意,我们不设置’encoding’选项 - 这会阻止 Node.js 将内容解码为字符串:

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

相对路径

请记住,在一般情况下,你的脚本可以使用任意当前工作目录运行。要解决相对于当前脚本的文件,请使用 __dirname__filename

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