2014-04-15 59 views
1

我正在写一个bot,并且我希望它将日志保存在一个文件中。我想将每天的日志写入不同的文件。我试过:将IRC日志写入文件,每天有一个文件

var date = new Date(); 
var mes = date.getMonth(); 
var dia = date.getDate(); 
var ano = date.getFullYear(); 
date = dia + "-" + mes + "-" + ano; 
var IRClog = fs.createWriteStream('LOG[' + date + '].txt', { 
    'flags': 'a' 
}); 

如何检查一天是否已经过去,所以我可以更改日期变量并写入不同的文件?

编辑:
ENOENT错误是因为“/”s,我将其更改为“ - ”s。

+0

我不认为你可以在文件名中有'/'。 – imtheman

+0

是的,我只是注意到了这一点。修复。 –

+0

你现在得到什么? – imtheman

回答

2

一个解决方案可能是保留最后一条消息的日期。如果下一个消息的日期与最后一个消息的日期不同,请关闭文件流并为当天创建一个新日志。

另一种解决方案可能是为每条消息使用fs.appendFile(),但效率较低。