1. Node.js的文件系统(fs)模块
Node.js是一款运行在服务器端的JavaScript语言,可以通过Node提供的fs模块读取和写入文件,其中包含了同步和异步的API。
2. 文件读操作
2.1 同步读取文件
使用fs模块的同步API进行读取操作
const fs = require('fs');
const data = fs.readFileSync('/path/to/file', 'utf8');
console.log(data);
以上代码演示了如何使用readFileSync同步读取文件内容,第一个参数传入文件路径,第二个参数传入文件编码格式。
同步读取文件会阻塞代码的执行,直到读取完成,所以在需要同时读取多个文件或文件较大时,应该使用异步API。
2.2 异步读取文件
使用fs模块的异步API进行读取操作。
const fs = require('fs');
fs.readFile('/path/to/file', 'utf8', (err, data) => {
if (err) throw err;
console.log(data);
});
以上代码演示了如何使用readFile异步读取文件内容,第一个参数传入文件路径,第二个参数传入文件编码格式,第三个参数是回调函数,当读取完成后会自动调用回调函数。回调函数中第一个参数是错误信息,第二个参数是读取到的文件内容。
3. 文件写操作
3.1 同步写入文件
使用fs模块的同步API进行写入操作。
const fs = require('fs');
const data = 'Hello, world!';
fs.writeFileSync('/path/to/file', data);
以上代码演示了如何使用writeFileSync同步将数据写入文件,第一个参数传入文件路径,第二个参数传入要写入的数据。
3.2 异步写入文件
使用fs模块的异步API进行写入操作。
const fs = require('fs');
const data = 'Hello, world!';
fs.writeFile('/path/to/file', data, (err) => {
if (err) throw err;
console.log('complete');
});
以上代码演示了如何使用writeFile异步将数据写入文件,第一个参数传入文件路径,第二个参数传入要写入的数据,第三个参数是回调函数,当写入完成后会自动调用回调函数。回调函数中第一个参数是错误信息。
4. 总结
以上介绍了Node.js fs模块进行文件读写的异步和同步API,需要根据具体情况选择适当的API。同时进行文件操作时,务必要注意不要阻塞其他重要的代码执行。