从文件异步读取
使用 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
}