編輯:關於Android編程
JSON(JavaScript Object Notation) :一種輕量級的數據交換格式,基於JavaScript的一個子集。 JSON采用完全獨立於語言的文本格式,使JSON成為理想的數據交換語言。易於人閱讀和編寫,同時也易於機器解析和生成(網絡傳輸速度快)。作為一種數據交換格式,JSON優勢很明顯(相對與我們通常使用的XML):JSON比XML體積小;JSON和JavaScript交互更加方便;JSON的速度要遠遠大於XML;JSON的解析要比XML的解析要方便等。
JSON語法規則:
{
tel : [12345678, 87654321], // 數組形式,以方括號保存
name : tianjiefeng, // 字符串
age : 20, // 數值
address : { country : china, province : guangdong }, // JSON對象,以花括號保存
graduate : true // 布爾值
}
那個Android開發中JSON格式的數據如何創建?又如何解析呢?首先舉如何創建下面這個JSON的例子:
private JSONObject createJSONData() {
// 最外層是花括號{},所以就是一個JSONObject對象
JSONObject student = new JSONObject();
try {
// 第1個value是[ ],也就是一個JSONArray對象
JSONArray tel= new JSONArray();
phone.put(12345678);
phone.put(87654321);
person.put(tel, tel);
// 第2個value一個字符串
person.put(name, tianjiefeng);
// 第3個value一個字符串數值
person.put(age, 20);
// 第4個value一個JSONObject對象
JSONObject address = new JSONObject();
address.put(country, china);
address.put(province, guangdong);
person.put(address, address);
// 第5個value一個布爾值
person.put(graduate, true);
} catch (JSONException e) {
e.printStackTrace();
}
return student ;
}
如果要返回String字符串,只需要修改為return student.toString();下面看下如何把上面的JSON數據解析出來:
private Map
Map
try {
// 直接把JSON字符串轉化為一個JSONObject對象
JSONObject student= new JSONObject(json);
// 第1個鍵值對
resultMap.put(tel, person.getJSONArray(tel).toString());
// 第2個鍵值對
resultMap.put(name, person.getString(name));
// 第3個鍵值對
resultMap.put(age, person.getInt(age));
// 第4個鍵值對
resultMap.put(address, person.getJSONObject(address).toString());
// 第5個鍵值對
resultMap.put(graduate, person.getBoolean(married));
} catch (JSONException e) {
e.printStackTrace();
}
return resultMap;
}
} 上面就是用我們用JSONObject 及JSONArray進行數據操作。但在實際開發中,我們一般都會使用Gson解析JSON數據
首先,從 code.google.com/p/google-gson/downloads/list下載GsonAPI和相關jar包,然後通過GJSON封裝的方法來處理數據。 Gson的解析非常簡單,但是它的解析規則是必須有一個bean文件,這個bean文件的內容跟JSon數據類型是一一對應。Gson有兩個重要的方法,一個就是tojson(tojson就是將bean裡面的內容轉換為json內容),一個就是fromjson(從我們的Json對象封裝出一個一個的bean對象)。
本文實例為大家分享了Android仿音樂播放器功能的具體代碼,供大家參考,具體內容如下讀取本地音樂文件源代碼:import android.media.MediaPlay
今天看了鴻洋_大神在慕課網講的qq5.0側滑菜單。學了不少的知識,同時也佩服鴻洋_大神思路的清晰。看了教程課下也自己實現了一下。代碼幾乎完全相同 別噴我啊。。沒辦法 o(
啦啦畢業了,畢業前要寫畢業設計,需要寫一個簡單的藍牙APP進行交互,通過參考網上資料,問題順利搞定,下面小編把具體實現思路分享給大家,供大家參考。1、Android藍牙編
一般的安卓app都有自動更新功能,實現app的更新,以讓用戶體驗新版本的功能,這裡也是項目中用到的,今天就來總結一下,代碼應該有點多,還請耐心點哈。安卓應用實現自動更新比