【发布时间】:2018-03-02 12:07:25
【问题描述】:
我正在使用 curl 和 JsonCpp (https://github.com/open-source-parsers/jsoncpp) 编写 C++ 代码。 Json::parseFromStream 返回以下数据:
Funds: [
{
"id" : 1,
"jsonrpc" : "2.0",
"result" :
{
"availableToBetBalance" : 437.91000000000003,
"discountRate" : 4.0,
"exposure" : 0.0,
"exposureLimit" : -5000.0,
"pointsBalance" : 3135,
"retainedCommission" : 0.0,
"wallet" : "UK"
}
}
]
我如何提取 availableToBetBalance - 我尝试过类似的方法:
std::string d = json_data["result.availableToBetBalance"].asString();
和:
std::string d = json_data["result"]["availableToBetBalance"].asString();
后者抛出异常:in Json::Value::resolveReference(key, end): requires objectValue
【问题讨论】:
-
不知道你用的是哪个库,你试过
json_data["result"]["availableToBetBalance"].asString()之类的吗? -
我正在使用 jsoncpp (github.com/open-source-parsers/jsoncpp)。
-
你读过wiki吗?
-
是的。我认为是 Funds: [ 我不知道如何处理。
-
不确定“资金”位,但方括号表示一个数组(即使它只包含一个元素),您是否尝试过类似 json_data[0]["result"][" availableToBetBalance"]?