Node.js读取文件,如果存在则追加数据,如果不存在则创建文件

标签 node.js fs

我尝试使用 fs.open()。但当文件不存在时,数据存在。 下面是我的代码:

fs.open('person.json', 'w', function (err, data) {
  if (err) throw err;
  console.log(data)
});

console.log(data)结果是

3

这是为什么呢? 3从哪里来?

我的目的是读取文件(如果存在)并创建新文件(如果不存在)。如何在 Node.js 中做到这一点?

最佳答案

'3' - 是文件描述符。 https://nodejs.org/api/fs.html#fs_file_descriptors

'w' - 打开文件进行写入。文件被创建(如果不存在)或截断(如果存在)。

使用'r+' - 打开文件进行读写。如果文件不存在,则会发生异常。

https://nodejs.org/api/fs.html#fs_file_system_flags

关于Node.js读取文件,如果存在则追加数据,如果不存在则创建文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53827566/

相关文章:

javascript - 安装 npm 依赖项 webtorrent - 错误 : Can't resolve 'fs' - Fountain-Js (Yeoman)

node.js - 将 getUserMedia 流式传输到服务器

javascript - 使用 load-grunt-config 找不到 Grunt 插件

javascript - promise 解决顺序并等待

javascript - Node 服务器下载图片成功但不显示

javascript - 使用 node.js 写入二进制数据的问题

javascript - postgres 不支持 TypeORM 数组?

mysql - 我还需要在nodejs中使用 'select ... for update'吗?

javascript - 如何为返回表中的每一行添加换行符?

javascript - 使用 Chokidar 监视具有特定扩展名的文件