什么是json:
JSON即JavaScript Object Natation的简称,它是一种轻量级的数据交换格式,非常适合服务器与JavaScript的交互。JSON易于人阅读和编写。同时也易于机器解析和生成。JSON采用完全独立语言的文本格式,但是也是用了类似于C语言家族的习惯(包括C,C++,C#,JAVA,JavaScript,Perl,Python等)。这些特性使JSON成为理想的数据交换语言。
两种数据结构
一种是以
(key/value)
对形式存在的无序的
jsonObject
对象,一个对象以“
{”
(左花括号)开始,“
}”
(右花括号)结束。每个“名称”后跟一个“
:”
(冒号);“‘名称
/
值’对”之间使用“
,”
(逗号)分隔。
例如:{"name": "xiaoli"},这就是一个最简单的json对象,对于这种数据格式,key值必须要是string类型,而对于value,则可以是string、number、object、array等数据类型
另一种数据格式就是有序的
value
的集合,这种形式被称为是
jsonArray
,数组是值(
value
)的有序集合。一个数组以“
[”
(左中括号)开始,“
]”
(右中括号)结束。值之间使用“
,”
(逗号)分隔。
例如:[{“name”: “xiaoli”},{“name”:”xiaoming”},]这就是一个最简单的jsonArray对象,对于这种数据格式, 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、null、对象(object)或者数组(array)。这些结构可以嵌套。
json object 生成:
- <span style="font-size:18px;">private String createJson() throws JSONException
- {
- JSONObject obj = new JSONObject();
- obj.put("name", "xiaoli");
- return obj.toString();
- }</span>
json array 生成:
- <span style="font-size:18px;">private String createJsonArray() throws JSONException
- {
- JSONArray array = new JSONArray();
- JSONObject obj = new JSONObject();
- obj.put("name", "xiaoli");
- JSONObject obj1 = new JSONObject();
- obj1.put("name", "xiaowang");
- array.put(obj);
- array.put(obj1);
- return array.toString();
- }</span>
json object 解析:
- <span style="font-size:18px;">private void parseJson(String json)
- {
- try
- {
- JSONObject obj = new JSONObject(json);
- String name = obj.getString("name");
- System.out.println("name:"+name);
- }catch (JSONException e)
- {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }</span>
json array 解析:
- <span style="font-size:18px;"> private void parseJsonArray(String array) {
- try {
- JSONArray jarray = new JSONArray(array);
- for(int i = 0;i<jarray.length();i++)
- {
- JSONObject obj = jarray.getJSONObject(i);
- Log.e("obj:",obj.toString());
- String value = obj.getString("name");
- Log.e("value:",value);
- }
- } catch (JSONException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }</span>
json demo 下载地址:
http://download.csdn.net/detail/q610098308/9220179