我正在使用Nodejs,我正在学习有关fs模块的更多信息。我一直在使用的数据存储文件类型是JSON。
我是fs模块的新手,想把我的stock.json的最后一个输出来输入新数据然后重新输入,以便稍后可以在我的完整代码中调用
以下是我尝试使用的代码
fs.readFile(filestockname, "UTF8", function(err, data) {
if (err) { throw err };
global_data = data;
var stocknames = item
console.log("File Read")
fs.writeFileSync('.//settings/Stock/stock.json', global_data+"\r\n" +'"'+stocknames+'"'+"\r\n"+"{"+"\r\n"+'"'+"instock"+'"'+":"+ "1"+"\r\n"+'"'+"stocklimit"+'"'+":"+ "200"+"\r\n"+"}", (err) => {
if (err) throw err;
});
});
}
以下是我的stock.json
中的代码}
"Scrap Metal":{
"instock":1,
"stocklimit":200
}
}
答案 0 :(得分:1)
幸运的是,对我们来说,我们不必解析&我们自己编码原始JSON数据,但我们可以使用JavaScript的内置JSON.parse()
和JSON.stringify()
方法,这样我们就可以使用标准的JavaScript数据结构,如Object,Array,String和等等。
fs.readFile(filestockname, "UTF8", (err, data) => {
if (err) throw err;
let global_data = JSON.parse(data);
global_data[item] = {
instock: 1,
stocklimit: 200
};
console.log("File Read");
fs.writeFile('.//settings/Stock/stock.json', JSON.stringify(global_data), (err) => {
if (err) throw err;
console.log("File Written");
});
});