如果我只想一次读取10个字节,或者一次读取一行数据(寻找换行字符),是否可以像这样传递fs.createReadStream()选项
var options = {}
var stream = fs.createReadStream('file.txt', options);
以便我可以限制一次流的数据量?查看fs文档,我没有看到任何允许我这样做的选项,尽管我猜这是可能的。
https://nodejs.org/api/fs.html fs_fs_createreadstream_path_options
您可以使用.read()
:
var stream = fs.createReadStream('file.txt', options);
var byteSize = 10;
stream.on("readable", function() {
var chunk;
while ( (chunk = stream.read(byteSize)) ) {
console.log(chunk.length);
}
});
与highWaterMark
选项相比,知道这个选项的主要好处是您可以在尚未创建的流上调用它。
这里是文档