fs.createReadStream – 限制一次传输的数据量
如果我只想一次读取10个字节,或者每次读取一行数据(查找换行符),可以像这样传递fs.createReadStream()选项
var options = {} var stream = fs.createReadStream('file.txt', options);
这样我可以一次限制数据stream的数量吗? 看着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
选项highWaterMark
主要好处是你可以在没有创build的stream上调用它。
这里是文档