Android中的JSONObject和JSONArray的使用

Posted tuke_tuke

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中的JSONObject和JSONArray的使用相关的知识,希望对你有一定的参考价值。

android的jdk开发包中已经包含了JSON的几个API:
技术分享

也可以下载JSON包:http://files.cnblogs.com/java-pan/lib.rar

JSONObject 在线API:http://json-lib.sourceforge.net/apidocs/jdk15/index.html

要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:
commons-lang.jar
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
ezmorph.jar
json-lib-2.2.2-jdk15.jar


1,JSONObject的形式和Map差不多,就是就是键值对组成的,只不过JSONObject用的是冒号“:”,Map用的是逗号

JSON对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}

例:JSON对象
{

"publisher":"人民邮电出版社",

"image":"http://img3.doubanio.com\/mpic\/s27308766.jpg",
"isbn10":"7115314640",
"isbn13":"9787115314642",
"title":"Android开发入门与实战",
"url":"http:\/\/api.douban.com\/v2\/book\/24701842",

"price":"59.00元"

}

JSONObject类是一个final类,继承了Object,实现了JSON接口
构造方法如下:
JSONObject();创建一个空的JSONObject对象
JSONObject(boolean isNull);创建一个是否为空的JSONObject对象
普通方法如下:
fromBean(Object bean);静态方法,通过一个pojo对象创建一个JSONObject对象
fromJSONObject(JSONObject object);静态方法,通过另外一个JSONObject对象构造一个JSONObject对象
fromJSONString(JSONString string);静态方法,通过一个JSONString创建一个JSONObject对象
toString();把JSONObject对象转换为json格式的字符串
iterator();返回一个Iterator对象来遍历元素


2, JSONArray,json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的

例:["string1","string2"].,[jsonobject1,jsonobject2,........]

JSONArray是一个final类,继承了Object,实现了JSON接口
构造方法如下:
JSONArray();构造一个空的JSONArray对象
普通方法如下:
fromArray(Object[] array);静态方法,通过一个java数组创建一个JSONArray对象
fromCollection(Collection collection);静态方法,通过collection集合对象创建一个JSONArray对象
fromString(String string);静态方法,通过一个json格式的字符串构造一个JSONArray对象
toString();把JSONArray对象转换为json格式的字符串
iterator();返回一个Iterator对象来遍历元素


对XML和JSON字符串各列一个简单的例子:

JSON:
{"password":"123456","username":"张三"}
XML://解析XML的技术:DOM,SAX,PUll技术
<?xml version="1.0" encoding="UTF-8"?> 
<user_info>
	<password>123456</password>
	<username>张三</username>
</user_info>













































以上是关于Android中的JSONObject和JSONArray的使用的主要内容,如果未能解决你的问题,请参考以下文章

从android中的JsonObject中提取坐标

Json 格式的说明

如何压缩 JSONObject 在 Android 中通过 Http 发送它?

android怎么遍历jsonobject

Android/Java 中的 JSON 数组迭代

Android/Java 中的 JSON 数组迭代