鍍金池/ 問答/HTML/ node監(jiān)聽文件變化并獲取更新內(nèi)容

node監(jiān)聽文件變化并獲取更新內(nèi)容

我的代碼是這樣寫的,做第一次修改可以監(jiān)聽到,第二次就報(bào)錯(cuò)

var fs=require('fs');
var path=require('path');
var file1=path.resolve('test.txt');
var readline = require('readline');// 引入readline模塊
//監(jiān)視文件
var fsWatcher=fs.watch(file1,function(err,filename){

//console.log('創(chuàng)建監(jiān)視器成功,filename:'+filename);

});
//chang 事件會(huì)觸發(fā)多次
fsWatcher.on('change',function(err,filename){

console.log(filename+'-發(fā)生變化');
var rl = readline.createInterface({
    input: fs.createReadStream(file1,{
        enconding:'utf8'
    }),
    output: null
});
rl.on('line', function(line) {
    if (line) {
        console.log(line.toString());
    }
});

});
//50秒后 關(guān)閉監(jiān)視
setTimeout(function(){

fsWatcher.close(function(err){
    if(err)
        console.error(err);
    console.log('關(guān)閉成功watch');
});

},50000);

clipboard.png

回答
編輯回答
解夏

用你的代碼跑了一下 沒有報(bào)錯(cuò) 報(bào)錯(cuò)信息提示是找不到文件 我推測(cè)是文件被其他東西刪了?

2017年3月7日 04:46