您的位置:首页 > Web前端 > JavaScript

什么是json以及json解析

2015-10-29 15:23 639 查看
什么是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  生成:

[java] view
plaincopy

<span style="font-size:18px;">private String createJson() throws JSONException  

    {  

        JSONObject obj = new JSONObject();  

        obj.put("name", "xiaoli");  

        return obj.toString();  

    }</span>  

json array  生成:

[java] view
plaincopy

<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 解析:

[java] view
plaincopy

<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 解析:

[java] view
plaincopy

<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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息