92 lines
1.6 KiB
C++
92 lines
1.6 KiB
C++
|
#include "json.hpp"
|
||
|
using json = nlohmann::json;
|
||
|
|
||
|
#include <iostream>
|
||
|
#include <vector>
|
||
|
#include <map>
|
||
|
#include <string>
|
||
|
using namespace std;
|
||
|
|
||
|
string fun1(){
|
||
|
json js;
|
||
|
js["msg_type"] = 2;
|
||
|
js["from"] = "zhangsan";
|
||
|
js["to"] = "lisi";
|
||
|
js["msg"] = "hello";
|
||
|
|
||
|
cout << js << endl;
|
||
|
string sendjs = js.dump();
|
||
|
cout << sendjs.c_str() << endl;
|
||
|
|
||
|
return sendjs;
|
||
|
}
|
||
|
|
||
|
string fun2(){
|
||
|
json js2;
|
||
|
js2["msg_id"] = {1,2,3,4,5};
|
||
|
js2["msg"]["msg_a"] = "a";
|
||
|
js2["msg"]["msg_b"] = "b";
|
||
|
js2["msg"] = {{"msg_aa","aa"},{"msg_bb","bb"}};
|
||
|
|
||
|
cout << js2 <<endl;
|
||
|
string sendjs2 = js2.dump();
|
||
|
cout << sendjs2.c_str() << endl;
|
||
|
return sendjs2;
|
||
|
}
|
||
|
|
||
|
string fun3(){
|
||
|
vector<int> v;
|
||
|
v.push_back(1);
|
||
|
v.push_back(2);
|
||
|
v.push_back(3);
|
||
|
|
||
|
json js3;
|
||
|
js3["j_vec"] = v;
|
||
|
|
||
|
map<int,string> m;
|
||
|
m[1] = "m1";
|
||
|
m[2] = "m2";
|
||
|
m.insert({3,"m3"});
|
||
|
|
||
|
js3["j_map"] = m;
|
||
|
|
||
|
cout << js3 << endl;
|
||
|
string sendjs3 = js3.dump();
|
||
|
cout << sendjs3.c_str() << endl;
|
||
|
|
||
|
return sendjs3;
|
||
|
}
|
||
|
|
||
|
int main(){
|
||
|
//fun1();
|
||
|
//fun2();
|
||
|
//fun3();
|
||
|
|
||
|
string recvjs = fun1();
|
||
|
json js = json::parse(recvjs);
|
||
|
cout << js <<endl;
|
||
|
|
||
|
string recvjs2 = fun2();
|
||
|
json js2 = json::parse(recvjs2);
|
||
|
cout << js2["msg_id"] <<endl;
|
||
|
auto arr = js2["msg_id"];
|
||
|
cout << arr[2] << endl;
|
||
|
|
||
|
string arcvjs3 = fun3();
|
||
|
json js3 = json::parse(arcvjs3);
|
||
|
vector<int> v = js3["j_vec"];
|
||
|
map<int,string> m = js3["j_map"];
|
||
|
for(int i : v){
|
||
|
cout << i;
|
||
|
}
|
||
|
cout << endl;
|
||
|
for(auto j : m){
|
||
|
cout << j.first <<" " << j.second << endl;
|
||
|
}
|
||
|
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
|
||
|
|