编辑这个页面须要登录或更高权限!

Node.js 将JSON写入文件

Node.js将JSON对象写入文件–在本文中,我们将学习将JSON对象写入本地文件。

Node.js将JSON对象写入文件

要将JSON对象写入本地文件,请按照以下逐步指南进行操作:

  1. 字符串化JSON对象。使用JSON.stringify(jsonObject)将JSON对象转换为JSON字符串。

  2. 使用fs将字符串化对象写入文件。Node FS模块的writeFile()函数。

完整的Node.js脚本文件

在下面的Nodejs脚本中,JSON数据作为字符串存储在变量jsonData中。然后我们用JSON.parse()函数来JSONify字符串。现在我们有了一个JSON对象。到目前为止,我们模拟了您已经获得或创建了一个JSON对象的情况。

我们希望将此JSON对象保存到文件中。

为了将JSON对象保存到文件中,我们将json对象进行字符串化,jsonObj然后使用Node FS的writeFile()函数将其写入文件中。

// 文件系统模块执行文件操作
const fs = require('fs'); 
 
// json数据
var jsonData = '{"persons":[{"name":"John","city":"New York"},{"name":"Phil","city":"Ohio"}]}'; 
 
// 解析json
var jsonObj = JSON.parse(jsonData); 
console.log(jsonObj); 
 
// 字符串化JSON对象
var jsonContent = JSON.stringify(jsonObj); 
console.log(jsonContent); 
 
fs.writeFile("output.json", jsonContent, 'utf8', function (err) { 
    if (err) { 
        console.log("An error occured while writing JSON Object to File."); 
        return console.log(err); 
    } 
 
    console.log("JSON file has been saved."); 
 });

使用node命令在Terminal中运行以上程序

Node.js脚本终端输出

 $ node nodejs-write-json-object-to-file.js  
 { persons:  
   [ { name: 'John', city: 'New York' }, 
     { name: 'Phil', city: 'Ohio' } ] } 
 {"persons":[{"name":"John","city":"New York"},{"name":"Phil","city":"Ohio"}]} 
JSON file has been saved.

注意

在上面的程序中,您可能已经注意到,当登录到控制台时,hjsondata和jsoncontent都会产生相同的输出。这是因为当JSON对象被记录到控制台时,toString方法被隐式调用。但是,如果您尝试在没有事先Stringify的情况下直接将JSON对象写入文件,则会导致[object object]写入文件。

结论节点.js教程-节点.js将JSON对象写入文件,我们已经学会了使用JSON.stringify()功能和FS.writeFile文件()功能。