时间:2021-05-21
(1).解析Object之一:
复制代码 代码如下:{"url":"http:///qianxudetianxia"}
解析方法:
复制代码 代码如下:JSONObject demoJson = new JSONObject(jsonString);
String url = demoJson.getString("url");
(2).解析Object之二:
复制代码 代码如下:{"name":"android","name":"iphone"}
解析方法:
复制代码 代码如下:JSONObject demoJson = new JSONObject(jsonString);
String name = demoJson.getString("name");
String version = demoJson.getString("version");
System.out.println("name:"+name+",version:"+version);
(3).解析Array之一:
复制代码 代码如下:{"number":[1,2,3]}
解析方法:
复制代码 代码如下:JSONObject demoJson = new JSONObject(jsonString);
JSONArray numberList = demoJson.getJSONArray("number");
for(int i=0; i<numberList.length(); i++){
//因为数组中的类型为int,所以为getInt,其他getString,getLong同用
System.out.println(numberList.getInt(i));
}
(4).解析Array之二:
复制代码 代码如下:{"number":[[1],[2],[3]]}
解析方法:
复制代码 代码如下:
//嵌套数组遍历
JSONObject demoJson = new JSONObject(jsonString);
JSONArray numberList = demoJson.getJSONArray("number");
for(int i=0; i<numberList.length(); i++){
//获取数组中的数组
System.out.println(numberList.getJSONArray(i).getInt(0));
}
(5).解析Object和Array:
复制代码 代码如下:{"mobile":[{"name":"android"},{"name":"iphone"}]}
解析方法:
复制代码 代码如下:JSONObject demoJson = new JSONObject(jsonString);
JSONArray numberList = demoJson.getJSONArray("mobile");
for(int i=0; i<numberList.length(); i++){
System.out.println(numberList.getJSONObject(i).getString("name"));
}
所以,我们发现get后面接着的是你想要的得到的结果的类型:getType,这个对理解很有帮助。
(6).使用optType:
上面的例子,使用getType在碰到查找不到节点的时候,会抛出异常。
如果使用optType,找不到节点,则返回null或者默认值。
复制代码 代码如下://无url节点,抛出异常
String url = demoJson.getString("url");
//无url节点,返回空,如果为基本类型,则返回默认值
String url = demoJson.optString("url");
(7).UTF-8的BOM头导致解析JSON异常的问题
到json文件保存为utf-8的时候,在windows平台下,会产生bom头"EF BB EF"字节在文本的最前面(需要用十六进制工具打开才能看的到)。
有两种解决方法:
a.使用UltraEdit打开json文件, 另存为的时候,选择格式UTF-8,无BOM头,如果还不行,在用记事本打开,另存为UTF-8下,多试几次就可以了。
b.使用代码处理,截取json主体内容:
复制代码 代码如下:String jsonString = getJsonString();
jsonString = jsonString.substring(jsonString.indexOf("{"),jsonString.lastIndexOf("}")+1);
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Androidjson数据解析详解移动开发经常要与服务器数据交互,也常使用json数据格式,那就说说Androidjson解析。1.最简单json格式解析如下:
json数据交互1.为什么要进行json数据交互json数据格式在接口调用中、html页面中较常用,json格式比较简单,解析还比较方便。比如:webservi
本文实例讲述了json数据格式常见操作。分享给大家供大家参考,具体如下:json数据格式第一种,对象形式//varjson3={name:"longzhoufe
当我们在结合php和javascript实现某些功能时,经常会用到json。json是js的一种数据格式,可以直接被js解析。而php无法直接读取json数据,
json数据格式解析我自己分为两种;一种是普通的,一种是带有数组形式的;普通形式的:服务器端返回的json数据格式如下:复制代码代码如下:{"userbean"