我需要在哪里解析文本文件的所有行直到最后一行,并等待数据在文本文件中可用(文件的内容是每行中的文件路径)< /强> 我使用 readStream,Readable.resume(),Readable.pause()
编写了如下节点js代码const fs = require('fs');
const filename = "C:\\Temp\\removeme.txt";
var watching = false;
var readStream = fs.createReadStream(filename);
readStream.on('data', data => {
console.log(data.toString());
if(watching) readStream.pause();
});
watching = true;
fs.watch(filename,{persistent: true}, (event,file_name) => {
if(event === 'change') {
readStream.resume();
}
});
但是,一旦手表启动,每当我使用 echo“Test String”&gt;&gt;更新文件时,我都可以获取事件。 C:\ Temp \ removeme.txt 但不是readStream上的数据事件。我尝试了不同的方法而没有任何成功。非常感谢任何帮助/指针
答案 0 :(得分:1)
作为,他们说:“这里有一个模块!”
请参阅file-tail
将来,我发现npm是寻找模块的宝贵资源!选择最能描述您所需内容的两三个单词,并在npm search
命令中使用它们,如:
$> npm search file tail
产生:
NAME | DESCRIPTION | AUTHOR | DATE | VERSION | KEYWORDS
read-chunk | Read a chunk from a… | =sindresorhus | 2017-07-30 | 2.1.0 | read file readfile fs chunk slice part head tail buffer fd open
tail | tail a file in node | =lucagrulla | 2017-10-22 | 1.2.3 | tail file
fs-tail-stream | fs.createReadStream… | =eugeneware | 2017-02-02 | 1.1.0 | fs createReadStream tail tailing watch watching
...
...
或者将您的文字提交到npmjs
的搜索栏。