Node.js用于服务器端脚本。读写文件是在任何应用程序中执行的两个最重要的操作。 Node.js提供了广泛的内置函数来执行读写操作。 fs软件包包含文件操作所需的函数。 fs软件包的read()方法使用文件描述符读取文件。为了读取没有文件描述符的文件,可以使用fs软件包的readFile()方法。
用法
fs.read(fd, buffer, offset, length, position, callback)
参数:
- fd:fs.open()方法返回的文件描述符。
- buffer:存储从文件中获取的数据。
- offset:缓冲区中的偏移量,指示从何处开始写入。
- length:一个整数,指定要读取的字节数。
- position:一个整数,指定从文件中开始读取的位置。如果position为null,则从当前文件位置读取数据。
- callback:回调函数接受三个参数,即。 (err,bytesRead,buffer)。
说明:fs.open()方法打开文件并返回文件描述符。文件描述符是内核存储在文件描述符表中的数字或索引,用于唯一标识计算机操作系统中的打开文件。 fs.read()方法使用文件描述符读取文件并将其存储在缓冲区中。缓冲区的内容作为输出打印出来。 fs.close()方法用于关闭文件。
范例1:
var fs = require("fs");
var buffer = new Buffer.alloc(1024);
console.log("Open existing file");
fs.open('gfg.txt', 'r+', function (err, fd) {
if (err) {
return console.error(err);
}
console.log("Reading the file");
fs.read(fd, buffer, 0, buffer.length,
0, function (err, bytes) {
if (err) {
console.log(err);
}
if (bytes > 0) {
console.log(buffer.
slice(0, bytes).toString());
}
console.log(bytes + " bytes read");
// Close the opened file.
fs.close(fd, function (err) {
if (err) {
console.log(err);
}
console.log("File closed successfully");
});
});
});
输出:
Open existing file Reading the file 0 bytes read File closed successfully
范例2:动态输入文件名/路径。
// Module required to accept user
// input from console
var readline = require('readline-sync');
var fs = require("fs");
var path = readline.question("Enter file path:");
console.log("Entered path:" + path);
console.log("File Content ");
fs.stat(path, function (error, stats) {
// 'r' specifies read mode
fs.open(path, "r", function (error, fd) {
var buffer = new Buffer.alloc(stats.size);
fs.read(fd, buffer, 0, buffer.length,
null, function (error, bytesRead, buffer) {
var data = buffer.toString("utf8");
console.log(data);
});
});
});
输出:
C:\Users\User\Desktop>node read3.js Enter file path:new.txt Entered path:new.txt File Content Hello World.. Welcome to GeeksForGeeks.. This is a Node.js program
相关用法
- Node.js console.timeLog()用法及代码示例
- Node.js GM contrast()用法及代码示例
- Node.js GM transparent()用法及代码示例
- Node.js GM flop()用法及代码示例
- Node.js GM resize()用法及代码示例
- Node.js GM border()用法及代码示例
- Node.js GM bordercolor()用法及代码示例
- Node.js GM flip()用法及代码示例
- Node.js GM median()用法及代码示例
- Node.js GM orderedDither()用法及代码示例
- Node.js GM paint()用法及代码示例
- Node.js GM roll()用法及代码示例
- Node.js GM raise()用法及代码示例
- Node.js GM quality()用法及代码示例
- Node.js GM negative()用法及代码示例
注:本文由纯净天空筛选整理自Shreyasi_Chakraborty大神的英文原创作品 Node.js | fs.read() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。