我有一个像这样的嵌套Json:
build site:
image: node:6
stage: build
script:
- npm install --progress=false
- npm run build
artifacts:
expire_in: 1 week
paths:
- dist
deploy:
image: alpine
stage: deploy
script:
- apk add --no-cache rsync openssh
- mkdir -p ~/.ssh
- echo "$SSH_PRIVATE_KEY" >> ~/.ssh/id_dsa
- chmod 600 ~/.ssh/id_dsa
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- rsync -rav --delete dist/ user@server.com
现在我想测试是否存在元素“rH”。例如,如果我只在Data Objekt中有一个值“Temp”,我该如何测试哪些值存在?这可能没有异常处理吗?
string strJson = "{
"Header":
{"Version":"V0.00.01","ID":"1000","Name":"SetEnvValues"}
,
"Data":
{"Temp":0.00,"rH":0.00,"CO2":0.00,"O2":0.00 }
}";
我尝试使用count,但似乎这对嵌套对象不起作用:
{
"Header":
{"Version":"V0.00.01","ID":"1000","Name":"SetEnvValues"}
,
"Data":
{"Temp":0.00 }
}
这总是返回一个,我认为因为它只测试“数据”对象,而不是更深层次的嵌套对象。
答案 0 :(得分:2)
可以使用jsonReceivedEnvValues["Data"].count("Bla")
完成。确保您不会无意中创建您正在寻找的对象,例如:jsonReceivedEnvValues["Data"]["Bla"].is_null();
在 [“Data”]中创建一个对象 [“Bla”]