当前位置: 首页 > 面试题库 >

Node.js将一行写入.txt文件

海灵均
2023-03-14
问题内容

我想创建一个简单的日志系统,该日志系统使用Node.js将前一行之前的一行打印到txt文件中,但是我不知道Node.js中的文件系统如何工作。有人可以解释吗?


问题答案:

将数据插入文本文件的中间不是一件容易的事。如果可能,应将其附加到文件末尾。

将数据追加到一些文本文件的最简单方法是使用来自模块的内置fs.appendFile(filename, data[, options], callback)函数:fs

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,Node都会将新数据追加到您的文件中,直到您的应用程序关闭或您手动关闭流调用为止.end

logger.end() // close string


 类似资料:
  • 本质上,我想在使用BufferedReader向idex指定的元素减去1之后覆盖txt文件“quantity.txt”。但是,结果会变成一个空白的txt文件或胡言乱语(带有br.flush();)。我试着检查了ArrayList,结果是正常工作的。它只是不能打印到txt文件。有没有可能的方法/替代方法可以做到这一点?还是我在代码中的某个地方犯了一个错误,导致它输出了一个空白或杂乱无章的txt文件?

  • 问题内容: 如何将一小段文字写入文件?我已经使用Google搜索了3-4多个小时,但无法找到具体方法。 有很多论据,我不知道该如何使用。 当您只想在文件中写一个名字和几个数字时,最容易使用的功能是什么? 编辑:添加了一段我的代码。 问题答案:

  • 问题内容: 我已经在该站点附近搜索了答案,但找不到任何答案。 我有一个表格,我想将输入内容写入txt文件。为了简单起见,我只写了一个简单的表单和脚本,但是它一直让我空白。这就是我得到的 这是我的PHP文件 问题答案: 您的表格应如下所示: 和PHP 我写信是因为这样我才知道确切的位置。使用写入当前工作目录中的文件,在您的示例中我一无所知。 为您打开,写入和关闭文件。不要惹它。 进一步阅读: fil

  • 我正在使用一个nodejs应用程序。我已经开发了一个工作良好的虚拟API。这是我在命中get请求endpoint后收到的响应。 我的主要目标是能够将此响应保存到本地文件中。然而,我的代码返回的东西与我预期的相去甚远。它返回了大量的“代码”,但摘录如下: 另一方面,我的代码看起来是这样的: 你能发现我的错误吗?或者有别的办法吗?请分享。谢谢

  • 我试图从查询字符串中获取一个变量,并将其写入文本文件。我试过这样做: 我得到以下错误: 警告:fopen(etlLOG.txt)[function.fopen]:无法打开流:在E:\Users\george\listener中的权限被拒绝。php第8行 警告:f写():在第9行的E:\用户\乔治\listener.php中,提供的参数不是有效的流资源 警告:fclose():提供的参数不是E:\U

  • 问题内容: 我试图逐行读取文件,然后使用Node.js将其输出到另一个文件。 我的问题是由于Node.js的异步特性,行的顺序有时会混乱。 例如,我的输入文件就像:第1行第2行第3行 但是输出文件可能像:第1行第3行第2行 下面是我的代码。 任何想法将不胜感激,谢谢。 问题答案: 如果要编写同步代码,请仅使用同步功能: 对于异步方法,您可以编写类似