Jsoncpp problems
Jsoncpp problems
我使用Jsoncpp来解析c++的json格式。我不明白它是如何工作的;缺乏文档和例子让我开始,我想知道是否有人可以给我一些快速的指针。我找到的唯一的例子是处理文件…
-
我使用HTTP堆栈在缓冲区中获取json消息。例如,一个缓冲区包含消息
{"state":"Running"}
。我如何使用Json::阅读器来解析这个?再一次,我发现的唯一的例子是从文件 读取的 如何将值写入json消息?例如,我想将
"monkey : no"
和"running : yes"
写入json消息,然后我可以在GET请求中使用。
char* buff;
uint32_t buff_size;
也许这是你问题第一部分的好例子:
Json::Value values;
Json::Reader reader;
reader.parse(input, values);
Json::Value s = values.get("state","default value");
根本不缺文档。是的,它主要是参考文档,但它很好,而且交叉链接很好。
- 只要阅读文档
- 只要使用这个类或者使用其他类
示例代码供您参考,如下:
file.json
{
"B":"b_val2",
"A":{
"AA":"aa_val1",
"AAA" : "aaa_val2",
"AAAA" : "aaaa_val3"
},
"C":"c_val3",
"D":"d_val4"
}
jsoncpp的使用场景如下,用于上面的示例json文件。
#include <iostream>
#include "json/json.h"
#include <fstream>
using namespace std;
int main(){
Json::Value root;
Json::Reader reader;
const Json::Value defValue; //used for default reference
std::ifstream ifile("file.json");
bool isJsonOK = ( ifile != NULL && reader.parse(ifile, root) );
if(isJsonOK){
const Json::Value s = root.get("A",defValue);
if(s.isObject()){
Json::Value s2 = s.get("AAA","");
cout << "s2 : " << s2.asString() << endl;
}else{
cout << "value for key "A" is not object type !" << endl;
}
}
else
cout << "json not OK !!" << endl;
return 1;
}
输出::
s2: aaa_val2
此外,我还使用了" amalgamatay .py"来生成和使用上面示例源代码的jsoncpp。
相关文章:
- Problems with std::cin.fail()
- 使用jsoncpp库时出现链接问题
- 使用JsonCpp将数据返回到带有pybind11的python会在python调用中产生Symbol not foun
- 使用 jsoncpp 解析 json 数组字符串
- 如何将 jsoncpp 库包含在 unix 上的项目中?
- QT GStreamer Windows linker problems
- Problems with emscripten (WebAssembly)
- JsonCpp在退出函数时抛出LogicError
- 使用jsoncpp-NuGet包时获取未解析的外部符号
- JSONCPP 只用一个元素写入 JSON 数组
- 使用 jsoncpp 读取 JSON 文件
- 为什么当我从语句检查中删除"+ mod"时,以下程序给出错误的答案。问题链接:https://www.codechef.com/problems/FFC219B
- 使用 JSONCPP 将 JSON 数据增量写入文件
- Problems with QByteArray::right
- 使用 jsoncpp 时从 JSon 剥离私有数据的最佳方法
- 如何创建和填充 jsoncpp 数组 (jsoncpp.sourceforge)
- 在这种情况下如何让 jsoncpp 抛出?
- 为什么 JsonCpp http 客户端在 201 响应代码上失败?
- 要从url解析的JsonCpp
- Jsoncpp problems