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);
}



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

JsonObject null 的神坑

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

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

做项目时,遇到这么一个坑:如何判断一上json 是否为空, 开始的代码是这样的:JSONObject detail = JSONObject.fromObject("123"); if (detai...
  • zhangyunfei_happy
  • zhangyunfei_happy
  • 2015年12月25日 14:18
  • 16809

JSONObject处理字符串null的坑

在java处理JSON数据时,出现value为"null"的不能正常打印。 在打印出value为“null”时,直接输出null,而不是null字符串。 例子: import net.sf.json....
  • u013075699
  • u013075699
  • 2017年09月13日 12:47
  • 450

JSONObject.isNull(key)方法需注意处

JSONObject.isNull("key")方法首先判断是否含有该key字段, 如果不存在该字段,返回false; 如果存在此字段,还判断了该字段的value值是否为null,如果value值...
  • aiguoguo000
  • aiguoguo000
  • 2017年06月15日 12:12
  • 1419

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

/** * 将json对象中包含的null和JSONNull属性修改成"" * @param jsonObj */ public void filterNull(JSONObject j...
  • bendaorong
  • bendaorong
  • 2016年08月01日 16:36
  • 2335

解决 JSONObject.fromObject 数字为 null 时被转换为 0 问题

在使用JSONObject.fromObject的时候会遇到一种情况就是当对象的某一个Double型或Integer型的属性为空的时候,转JSON的时候会变成0。当一个布尔型的属性为空的时候,转JSO...
  • kemp_zuo
  • kemp_zuo
  • 2017年10月12日 22:06
  • 186

java 处理json字符串中null值

原始字符串:  {"username":"Cheers Li","entity_name":null} 目标:取出 entity_name 的值 需要jar包 javax.json-1.0.4.j...
  • achang21
  • achang21
  • 2016年01月14日 18:15
  • 6408

Java 中判断 JSONObject 对应的 VALUE 为空

目前发现有两种包.两种不一样的json包. 第一种情况是: json包是json-lib包是net.sf.json 怎样判断JSONObject返回的是字符串null还是null值. 研究源码发...
  • u013630349
  • u013630349
  • 2017年01月05日 17:54
  • 4798

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

原文地址:http://wuzhuti.cn/2175.html 举个例子 生成JSON代码片段 [java] 预览复制 Map  jsonMap = new HashMap()...
  • qq_31138523
  • qq_31138523
  • 2017年03月24日 10:44
  • 4213

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

在项目开发中经常需要讲后台的某个对象以json的方式传递给前台,默认配置将为空的属性不传递给前台。 ...
  • caixiajia
  • caixiajia
  • 2017年09月01日 10:00
  • 967
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSON解析字符串,null变成了"null"
举报原因:
原因补充:

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