Android中的JSONObject和JSONArray的使用
在Android的jdk開發(fā)包中已經(jīng)包含了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對象,就是一個鍵對應(yīng)一個值,使用的是大括號{ },如:{key:value}
例:JSON對象
{
"publisher":"人民郵電出版社",
"image":"http://img3.doubanio.com\/mpic\/s27308766.jpg",
"isbn10":"7115314640",
"isbn13":"9787115314642",
"title":"Android開發(fā)入門與實戰(zhàn)",
"url":"http:\/\/api.douban.com\/v2\/book\/24701842",
"price":"59.00元"
}
JSONObject類是一個final類,繼承了Object,實現(xiàn)了JSON接口
構(gòu)造方法如下:
JSONObject();創(chuàng)建一個空的JSONObject對象
JSONObject(boolean isNull);創(chuàng)建一個是否為空的JSONObject對象
普通方法如下:
fromBean(Object bean);靜態(tài)方法,通過一個pojo對象創(chuàng)建一個JSONObject對象
fromJSONObject(JSONObject object);靜態(tài)方法,通過另外一個JSONObject對象構(gòu)造一個JSONObject對象
fromJSONString(JSONString string);靜態(tài)方法,通過一個JSONString創(chuàng)建一個JSONObject對象
toString();把JSONObject對象轉(zhuǎn)換為json格式的字符串
iterator();返回一個Iterator對象來遍歷元素
2,?JSONArray,json數(shù)組,使用中括號[ ],只不過數(shù)組里面的項也是json鍵值對格式的
例:["string1","string2"].,[jsonobject1,jsonobject2,........]
JSONArray是一個final類,繼承了Object,實現(xiàn)了JSON接口
構(gòu)造方法如下:
JSONArray();構(gòu)造一個空的JSONArray對象
普通方法如下:
fromArray(Object[] array);靜態(tài)方法,通過一個java數(shù)組創(chuàng)建一個JSONArray對象
fromCollection(Collection collection);靜態(tài)方法,通過collection集合對象創(chuàng)建一個JSONArray對象
fromString(String string);靜態(tài)方法,通過一個json格式的字符串構(gòu)造一個JSONArray對象
toString();把JSONArray對象轉(zhuǎn)換為json格式的字符串
iterator();返回一個Iterator對象來遍歷元素
對XML和JSON字符串各列一個簡單的例子:
JSON: {"password":"123456","username":"張三"} XML://解析XML的技術(shù):DOM,SAX,PUll技術(shù) <?xml version="1.0" encoding="UTF-8"?> <user_info><password>123456</password><username>張三</username> </user_info>
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀
總結(jié)
以上是生活随笔為你收集整理的Android中的JSONObject和JSONArray的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android网络编程的Socket通信
- 下一篇: Android中的Parcelable接