Java,Parse JSON我知道的对象是null
我有一个JSON对象数组。 要解析这些数组并存储简单的数据类型值,我必须对键名进行假设并相应地存储它们。
我也知道有时键的值将为null。 示例{["promotion":null]}
我将如何解析这个?
如果我尝试访问值为null的键,我会得到一个JSONException。 现在这是有道理的,但即使我这样做if(myJSObject.getString("promotion")!=null)
然后我检查时仍然会得到JSONexception
我如何在我的代码中对null对象进行条件检查,以便我可以避免JSONexception
使用JSONObject.optString(String key)
或optString(String key, String default)
。
编辑:…或isNull(String key)
,当然:)
我认为你需要以不同的方式格式化JSON;
一系列的促销活动
{promotions:[{promotion:null}, {promotion:5000}]}
一次促销
{promotion:null}
编辑:根据您使用的json api,可能会有空检查。 Google的gson库有一个.isJsonNull()
方法
呃……我认为这不是格式正确的JSON字符串。 []表示一个数组,它没有像对象那样的任何键=>值配对。 我认为你想要的是{"promotion":null}
,然后你的代码片段就可以了。