该方法使用了文件描述符来读取文件。
参数
参数使用说明如下:
fd – 通过 fs.open() 方法返回的文件描述符。
buffer – 数据写入的缓冲区。
offset – 缓冲区写入的写入偏移量。
length – 要从文件中读取的字节数。
position – 文件读取的起始位置,如果 position 的值为 null,则会从当前文件指针的位置读取。
callback – 回调函数,有三个参数err, bytesRead, buffer,err 为错误信息, bytesRead 表示读取的字节数,buffer 为缓冲区对象。
实例
input.txt 文件内容为:
软件开发网官网地址:www.mscto.com
接下来我们创建 file.js 文件,代码如下所示:
var fs = require("fs");
var buf = new Buffer.alloc(1024);console.log("准备打开已存在的文件!");
fs.open('input.txt', 'r+', function(err, fd) {
if (err) {
return console.error(err);
}
console.log("文件打开成功!");
console.log("准备读取文件:");
fs.read(fd, buf, 0, buf.length, 0, function(err, bytes){
if (err){
console.log(err);
}
console.log(bytes + " 字节被读取");
// 仅输出读取的字节
if(bytes > 0){
console.log(buf.slice(0, bytes).toString());
}
});
});
以上代码执行结果如下:
$ node file.js
准备打开已存在的文件!
文件打开成功!
准备读取文件:
42 字节被读取
软件开发网官网地址:www.mscto.com
关闭文件
语法
以下为异步模式下关闭文件的语法格式:
fs.close(fd, callback)
该方法使用了文件描述符来读取文件。
参数
参数使用说明如下:
fd – 通过 fs.open() 方法返回的文件描述符。
callback – 回调函数,没有参数。
实例
input.txt 文件内容为:
软件开发网官网地址:www.mscto.com
接下来我们创建 file.js 文件,代码如下所示:
var fs = require("fs");
var buf = new Buffer.alloc(1024);console.log("准备打开文件!");
fs.open('input.txt', 'r+', function(err, fd) {
if (err) {
return console.error(err);
}
console.log("文件打开成功!");
console.log("准备读取文件!");
fs.read(fd, buf, 0, buf.length, 0, function(err, bytes){









