從檔案非同步讀取

使用 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
}