首页 > 解决方案 > Javascript同步写入文件和读取文件

问题描述

我需要将数据存储在变量中,将整个变量存储到文件中,然后从文件中读取。

如何使用 Java 脚本实现这一点?

试过:

fs.writeFileSync('/tmp/data.txt', JSON.stringify(objectData));
fs.readFile('/tmp/data.txt', (err, data) => {
  if (err) throw err;
  console.log(data);
});

但是第二部分是在文件写入完成之前执行,给出损坏的数据或部分数据。

如何实现上述场景?

标签: javascriptnode.jssynchronization

解决方案


我认为在您的情况下,如果您按照此处所述使用 fs.writeFile 会更好,以确保您的写入是否已完成然后读取您的文件:

fs.writeFile('/tmp/data.txt', JSON.stringify(objectData), (err) => {
  if (err) throw err;
  console.log('The file has been saved!');
fs.readFile('/tmp/data.txt', (err, data) => {
  if (err) throw err;
  console.log(data);
});
});

推荐阅读