📜  如何在 C++ 和 Node.js 之间传递 JSON 数据?

📅  最后修改于: 2022-05-13 01:55:36.190000             🧑  作者: Mango

如何在 C++ 和 Node.js 之间传递 JSON 数据?

在本文中,我们将使用 JSON 数据在两个名为 C++ 和 Node.js 的程序之间进行通信。我们可以使用常见的文本格式进行交流,但是文本格式会包含很多复杂性。但是,JSON 是轻量级且易于使用的。 JSON 与语言无关,因此可以被任何编程语言使用。

使用 C++ 进行序列化:序列化是将编程数据转换为 JSON 文本的过程。在 C++ 中,没有用于 JSON 阅读器的内置库。我们需要将头文件添加到我们的项目中。您的 C++ 项目基本上需要 json.hpp 文件来执行以下描述的内容。

让我们使用 C++ 代码生成一个 JSON 文件,如下所示。

C++
#include
#include
#include "json.hpp"
  
// For convenience
using json = nlohmann::json;
using namespace std;
  
int main(){
  json obj;
  obj["Name"] = "Inshal";
  obj["Roll no"] = "42";
  obj["Dept"] = "CSE";
  obj["cgpa"] = "7.99";
    
  ofstream file("output.json");
  file<


Javascript
'use strict';
    
const fs = require('fs');
    
fs.readFile('output.json', (err, data) => {
    if (err) throw err;
    let obj = JSON.parse(data);
    console.log(obj);
});
    
console.log('File Reading completed');




输出:

JSON Object Created:{
    "Name":"Inshal",
    "Roll no":"42",
    "Dept":"CSE",
    "cgpa":"7.99"
}

使用 Node.js 进行反序列化:

Javascript

'use strict';
    
const fs = require('fs');
    
fs.readFile('output.json', (err, data) => {
    if (err) throw err;
    let obj = JSON.parse(data);
    console.log(obj);
});
    
console.log('File Reading completed');

输出:

JSON file created:{
"name":"Inshal Khan",
"Roll no":"42",
"cgpa":"7.99"}
File Reading completed
想要从精选的视频和练习题中学习,请查看C++ 基础课程,从基础到高级 C++ 和C++ STL 课程,了解基础加 STL。要完成从学习语言到 DS Algo 等的准备工作,请参阅完整的面试准备课程