在node.js中一次读取一个文件?

kha*_*iuk 7 stream node.js

有没有办法在nodejs中一次读取一个符号而不将整个文件存储在内存中?我找到了线条的答案

我试过这样的东西,但它没有帮助:

const stream = fs.createReadStream("walmart.dump", {
    encoding: 'utf8',
    fd: null,
    bufferSize: 1,
});
stream.on('data', function(sym){
    console.log(sym);
});
Run Code Online (Sandbox Code Playgroud)

van*_*m23 8

可读流有一个read()方法,您可以在其中传递一个readed符号的大小.示例代码:

var readable = fs.createReadStream("walmart.dump", {
    encoding: 'utf8',
    fd: null,
});
readable.on('readable', function() {
  var chunk;
  while (null !== (chunk = readable.read(1) /* here */)) {
    console.log(chunk); // chunk is one byte
  }
});
Run Code Online (Sandbox Code Playgroud)