如何在文件之间读取/写入JSON数据? (Node.Js)

时间:2019-01-04 02:31:41

标签: javascript node.js json fs

我正在一个项目中,该项目需要将数据从一个模块写入JSON文件,然后从另一个模块调用。但是,这不会发生,它返回undefined:1 SyntaxError: Unexpected end of JSON input

我需要为此使用同步功能。

这是显示我的问题的样本文件。

Index.js

const fs = require('fs');
const {idk} = require('./idk.js');

fs.writeFileSync('output.json', '', 'utf8'); //Clears the file
idk();// calls the module
var result = fs.readFileSync('output.json', 'utf8'); //reads the file
console.log(JSON.parse(result));//outputs a parsed file

Sample.js

const fs = require('fs');
module.exports.sample = function(){

  var a = fs.readFileSync('output.json', 'utf8');//reads the file
  var b = JSON.parse(a);// parses json data

  console.log(b);// expected output {"instances": []}

  b.instances.push('yo'); //pushes to array

  var c = JSON.stringify(b);// stringify

  fs.writeFileSync('output.json', c, 'utf8'); //supposed to write '{"instances": ['yo']}'
}

0 个答案:

没有答案