Javascript 如何同步读取node.js中的逐行数据?

Javascript 如何同步读取node.js中的逐行数据?,javascript,node.js,Javascript,Node.js,在node.js中,我希望能够一行一行地同步读取(而不是读取整个文件),并且能够在一段时间后停止读取 我看到了,但他们没有解释如何同步进行。我也试过这个 但是test在读取文件之前打印,他们说这是同步的。但看起来不是 我希望打印行后显示测试打印 有人知道怎么做吗 感谢行读者提到,它是异步的,但返回一个承诺。您需要在行读取器之后使用同步承诺处理程序 readline用于高效异步处理。如果您坚持阻塞,您可以在需要的地方使用并拆分为行。readSync将读取我不需要的整个文件。请仔细查看偏移量和长度

在node.js中,我希望能够一行一行地同步读取(而不是读取整个文件),并且能够在一段时间后停止读取

我看到了,但他们没有解释如何同步进行。我也试过这个

但是
test
在读取文件之前打印,他们说这是同步的。但看起来不是

我希望打印行后显示测试打印

有人知道怎么做吗


感谢

行读者提到,它是异步的,但返回一个承诺。您需要在行读取器之后使用同步承诺处理程序


readline
用于高效异步处理。如果您坚持阻塞,您可以在需要的地方使用并拆分为行。readSync将读取我不需要的整个文件。请仔细查看
偏移量
长度
参数…但这是字节长度,不是要读取的最大行数。是的,您必须自己解析行。或者,如果您希望它简单,只需使用可用的异步方法。承诺不是同步的。它们与方法的前一个结果是同步的
lineReader.eachLine('big_file.txt', function(line, last) {
  console.log(line);

  if (last) {
    return false; // stop reading
  }
});
console.log("test");
var lineReader = require('line-reader');

// read all lines:
lineReader.eachLine('file.txt', function(line) {
  console.log(line);
}).then(function (err) {
  if (err) throw err;
  console.log("I'm done!!");
});