繁体   English   中英

如何同步读取node.js中的行?

[英]How to read line by line in node.js synchronously?

在node.js中,我希望能够逐行同步读取(而不是读取整个文件),并且还希望能够在行数之后停止读取。

我看到了这个https://nodejs.org/api/readline.html,但是他们没有解释如何同步进行。 我也尝试过

https://github.com/nickewing/line-reader

lineReader.eachLine('big_file.txt', function(line, last) {
  console.log(line);

  if (last) {
    return false; // stop reading
  }
});
console.log("test");

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

我希望在打印行之后显示测试打印。

有谁知道如何做到这一点?

谢谢

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

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!!");
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM