使用Node.js将一行写入.txt文件 [英] Write a line into a .txt file with Node.js

查看:23
本文介绍了使用Node.js将一行写入.txt文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用Node.js创建一个简单的日志记录系统,将最后一行之前的一行打印到一个.txt文件中。但是,我不知道Node.js的文件系统功能是如何工作的。

有人能解释一下吗?

推荐答案

将数据插入文本文件中间不是一项简单的任务。如果可能,您应该将其追加到文件的末尾。

向文本文件追加数据的最简单方法是使用fs module中的内置fs.appendFile(filename, data[, options], callback) function

var fs = require('fs')
fs.appendFile('log.txt', 'new data', function (err) {
  if (err) {
    // append failed
  } else {
    // done
  }
})

但如果要多次将数据写入日志文件,则最好改用fs.createWriteStream(path[, options]) function

var fs = require('fs')
var logger = fs.createWriteStream('log.txt', {
  flags: 'a' // 'a' means appending (old data will be preserved)
})

logger.write('some data') // append string to your file
logger.write('more data') // again
logger.write('and more') // again

每次调用.write时,节点都会将新数据追加到您的文件中,直到关闭应用程序,或手动关闭调用.end的流:

logger.end() // close string
请注意,上例中的logger.write没有写入新行。将数据写入新行:

var writeLine = (line) => logger.write(`
${line}`);
writeLine('Data written to a new line');

这篇关于使用Node.js将一行写入.txt文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆