javascript - 如何追加到 Node 中的文件?

标签 javascript node.js fs appendfile

我正在尝试追加一个字符串到日志文件。但是 writeFile 会在每次写入字符串之前删除内容。

fs.writeFile('log.txt', 'Hello Node', function (err) {
  if (err) throw err;
  console.log('It\'s saved!');
}); // => message.txt erased, contains only 'Hello Node'

知道如何简单地做到这一点吗?

最佳答案

对于偶尔的追加,您可以使用 appendFile,它在每次调用时都会创建一个新的文件句柄:

Asynchronously :

const fs = require('fs');

fs.appendFile('message.txt', 'data to append', function (err) {
  if (err) throw err;
  console.log('Saved!');
});

Synchronously :

const fs = require('fs');

fs.appendFileSync('message.txt', 'data to append');

但是如果你重复追加到同一个文件中,reuse the file handle 会好很多。 .

关于javascript - 如何追加到 Node 中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3459476/

相关文章:

javascript - 用户保存未保存且没有错误

javascript - 为什么我的 ng-click 不起作用

Javascript:显示所有用户信息(即导航器对象)以进行调试

node.js imqplib sendToQueue 到 RabbitMQ 挂起

javascript - 是什么原因导致我的 writeFile 中出现未知编码错误?

javascript - 如何使用 angularjs 变量在jsp页面中动态更改脚本标签的路径? (可能重复)

node.js - Passport.js 中的 Google 策略是否随着 Google+ 的结束而弃用

javascript - 选择检查主体时如何更新 MongoDB 中的数据

javascript - 使用伪查询编写 JSON

javascript - NODEjs 在 for 循环内同步 exec 语句