JSON解析字符串,null变成了"null"

原创 2015年07月08日 18:28:52

收到一串JSON数据,想从里面解析出需要的成分。很奇怪的是,里面的字符串明明就是null,解析出来的结果确实"null",造成了很大的困扰。

JSON数据:

data{
    "name": "shawn1992",
    "address": null
}
解析代码:

JSONObject data = obj.optJSONObject("data");
String nameString = data.optString("name");
String addressString = data.optString("address");
解析结果:

nameString = "shawn1992";

address = "null";

解决办法:

其实,JsonObject有一个方法是判断value是否为空,JsonObject.isNull(key)。所以解决办法也很简单,在解析前进行处理一下就可以。

public static String optString(JSONObject json, String key)
{
    if (json.isNull(key))
        return null;
    else
        return json.optString(key, null);
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

JSONNull

最近用JSONObject,感觉比xml好用一些,json的打包和解包都比较清晰和容易,最近遇到一个问题,将一个JSON对象解析,存到hashmap中去,然后再从hashmap取出数据,遇到jsonn...

JsonObject null 的神坑

现在开源的 Json 序列化方案层出不穷,在性能和使用方面,都取得了很好的效果,比较常用的包括 Gson,FastJson 等等。然后对于初学者而言,或者不想引入额外框架的情况下,在这些场景下,还是会...

将json对象中包含的null和JSONNull属性修改成""

/** * 将json对象中包含的null和JSONNull属性修改成"" * @param jsonObj */ public void filterNull(JSONObject j...

JSON解析 null处理

使用的JSON包为json-lib-2.2.3-jdk15.jar。 需解析的JSON串:{"myCancerGenome":[],"aminoAcidChange":null,"normalRef...

jackson 实体转json 为NULL或者为空不参加序列化

1.实体上 @JsonInclude(Include.NON_NULL)  //将该标记放在属性上,如果该属性为NULL则不参与序列化  //如果放在类上边,那对这个类的全部属性起作用  //In...

fastjson生成json时Null转为空字符串""或者不展示

原文地址:http://wuzhuti.cn/2175.html 举个例子 生成JSON代码片段 [java] 预览复制 Map  jsonMap = new HashMap()...

JSONObject怎么将null的值替换为空字符串

今天遇到个小问题,app识别不了null的值,只能将null替换成“”空字符串。 发现用Java的类好像没办法直接替换,只能自己写了一个对象,在转为json对象,通过设置JsonConfig就能实现...

关于android 的org.json类JsonObject解析值为null的出现的问题

相信org.json包下的jsonObject有些人比较熟悉了,它是android原生的json解析类,先看下org.json 包的结构,比较简单: 今天在用这个对象注意到了这个问题:在对服务...

含有null值属性对象转json时使其变成空字符串

在项目开发中经常需要讲后台的某个对象以json的方式传递给前台,默认配置将为空的属性不传递给前台。 ...

net.sf.json.JSONObject 为 null 的判断

做项目时,遇到这么一个坑:如何判断一上json 是否为空, 开始的代码是这样的:JSONObject detail = JSONObject.fromObject("123"); if (detai...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSON解析字符串,null变成了"null"
举报原因:
原因补充:

(最多只允许输入30个字)