Javascript 如何使用Node JS在现有文件中选择和添加数据?

Javascript 如何使用Node JS在现有文件中选择和添加数据?,javascript,html,node.js,angularjs,Javascript,Html,Node.js,Angularjs,请解释一下,我的json文件中有一个大数据,我必须在某个点进行选择,比如data===smp'Report' 提前谢谢你 这很容易。我不知道您的json文件结构,但如果您只是: var data = require('./report.json'); 然后,数据只是一个常规的JS对象,其结构与文件中的结构完全相同。所以如果它看起来像 { "reports" : [ { "firewall_status" : "on"}]} 或者类似的,那么数据可以: console.log(data.rep

请解释一下,我的json文件中有一个大数据,我必须在某个点进行选择,比如data===smp'Report'


提前谢谢你

这很容易。我不知道您的json文件结构,但如果您只是:

var data = require('./report.json');
然后,数据只是一个常规的JS对象,其结构与文件中的结构完全相同。所以如果它看起来像

{ "reports" : [ { "firewall_status" : "on"}]}
或者类似的,那么数据可以:

console.log(data.reports[0].firewall_status); 
它会印在纸上

同样,你也可以这样做

data.reports.push({firewall_status : "off"});
或者用一个普通的老JS对象做其他任何事情

完成后,您可能希望将数据写回磁盘,因此您可以通过串接对象并将其与fs模块一起写出来实现:

fs.writeFile('./report.json', JSON.stringify(data, null, 4), function(err) {
    if(err) {
      console.log(err);
    } else {
      console.log('JSON saved');
    }
}); 

上面我添加的代码,我只是从12790KB复制了几行。因此,如果整个文件数据等于data,那么我认为我必须像那样使用ifdata==smp'Reports'{}。但是我把有多个“{”和“}”混淆了。如果我想在{,{,{data.substring},},}之间添加数据。?我不明白你的评论。我知道您的整个JSON文件比您所写的要复杂,但我的回答仍然允许您访问和修改其中的信息,您可能需要更深入地嵌套。也就是说,如果你看到的是一个12兆字节的数据结构,你可能会考虑一个数据库,比如MunGDB,而不是一个JSON文件。无论如何,谢谢,我很抱歉这不是JSON文件。它的格式是Gcf.smp 9{int Active=1 str Name=windows_monitoring vec Params{str 0=。\\res\\Reports str 1=windows_monitoring}int Type=9}}str Last Modification Date=2014/04/17 16:40:13 str ListPath=REAL-TIME int-StopOnFailure=1}//正如您在上面的代码smp报告{starts}后看到的那样。您的问题明确表示您正在使用JSON文件。
fs.writeFile('./report.json', JSON.stringify(data, null, 4), function(err) {
    if(err) {
      console.log(err);
    } else {
      console.log('JSON saved');
    }
});