zoukankan      html  css  js  c++  java
  • JSON的理解

    官方解释:

    JSON的全称是”JavaScript Object Notation”,单单从字面上的理解就是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。

    理解:

    JSON所谓的基于文本,也就是说它仅仅依靠文本来表示,不像Http协议,什么超文本、又有音频视频等,所以JSON是一种轻量级的数据。

    独立于语言:JSON数据是跨平台的,通用的,不是说只可以在JavaScript中解析,它可以在任意支持的语言上解析,如Java、C#等等。

    JSON的两种结构:对象和数组

    1、JSON对象:以“{”开始,以“}”结束,里面则是一系列的键(key)值(value)对,键和值用“:”分开,每对键值对之间用“,”分开。参考以下语法结构:

    {key1:value1,key2:value2,key3:value3...}

    其中键(key)是字符串,而值(value)可以是字符串,数值,true,false,null,对象或数组,也就是说某个键(key)的值(value)可以是一个数组,数组里面又是一些JSON对象,这种表示稍微复杂一些,但是参照这些理解可以很容易分辨出来。

    2、JSON数组:以”[”开始,”]”结束,如同程序语言一样,例如C#,Button[] btnArray,则BtnArray是一个Button类型的数组,里面就存放Button类型的对象,那么JSON数组也一样,里面存放的也是JSON对象,参考下面语法结构:

    [{key1:value1,key2:value2},{key3:value3,key4:value4},{key5:value5,key6:value6},{key7:value7,key8:value8}]

    这里就有4个JSON对象,对象与对象之间用“,”分开。

    JSON字符串与JSON对象:

    JSON字符串,就是要满足JSON格式要求的字符串,例如:String str = "{"StudentID":100,"Name":"Me","Hometown":"China"}";

    JSON对象,指符合json格式要求的对象,例如C#中 JObject json = JObject.Parse("{"StudentID":100,"Name":"Me","Hometown":"China"}");

    JSON数据的解析:

    不同程序语言的解析稍微有点区别,不过大体是一样的,参考下面简单的例子:

    C#中:JObject json = JObject.Parse("{"StudentID":100,"Name":"Me","Hometown":"China"}");

              string studentID = (string)json["StudentID"];

    Java中: JSONObject json = new JSONObject("{"StudentID":100,"Name":"Me","Hometown":"China"}");

                 String studentID = json.getString("StudentID");

    假如某个value是一个JSON数组,那么先按照上面的方法获取value值,再把值传递给JSONArray,根据JSONArray下标取得对应的JSON对象即可,

    下标与C#、Java数组下标一样,从0开始。

      以上是个人对应JSON的理解,若存在错误,请无私指出,十分感谢!

  • 相关阅读:
    光纤收发器的连接及收发器指示灯故障诊断
    Keepalive介绍及工作原理
    RabbitMQ消息队列集群配置-1
    python2 centos7 安装mysql-python库
    etcd服务的安装与配置 yum安装新版本
    ETCD集群安装配置及简单应用 老版本
    查看mysql 最大连接数,连接线程数
    TCP连接状态详解及TIME_WAIT过多的解决方法
    Linux 进程打开最大文件连接数Too many open files
    redis 连接数 修改
  • 原文地址:https://www.cnblogs.com/miracletimes/p/4099320.html
Copyright © 2011-2022 走看看