gpt4 book ai didi

c++ nlohmann json - 如何测试嵌套对象是否存在或为空

转载 作者:行者123 更新时间:2023-11-28 01:34:38 33 4
gpt4 key购买 nike

我有一个这样的嵌套 Json:

   string strJson = "{
"Header":

{"Version":"V0.00.01","ID":"1000","Name":"SetEnvValues"}


,
"Data":

{"Temp":0.00,"rH":0.00,"CO2":0.00,"O2":0.00 }



}";

现在我想测试是否存在元素“rH”。例如,如果我在 Data Objekt 中只有一个值“Temp”,我如何测试存在哪些值?如果没有异常处理,这可能吗?

{
"Header":

{"Version":"V0.00.01","ID":"1000","Name":"SetEnvValues"}


,
"Data":

{"Temp":0.00 }



}

我用 count 试过了,但它似乎不适用于嵌套对象:

jsonReceivedEnvValues = json::parse(strJson);
int count = jsonReceivedEnvValues["Data"].count("Bla");

这总是返回一个,我认为是因为它只测试“数据”对象,而不是更深的嵌套对象。

最佳答案

这可以通过 jsonReceivedEnvValues["Data"].count("Bla") 来完成。确保您不会不小心创建了您要查找的对象;例如,jsonReceivedEnvValues["Data"]["Bla"].is_null();["Data"] 中创建一个对象["Bla"]

关于c++ nlohmann json - 如何测试嵌套对象是否存在或为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49850890/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com