• json是个啥东东


    xml 不用说 只要是搞web开发的 没听说谁不知道的 一种类似数据传输格式定义的语言 但是他却不是一个真正的轻量级的东西 其他的不说 只要传输一点很少的数据 经过他那左括号右括号 还有什么属性 一包装 大得惊人 在网络上传输本来就是要越少越好 不过他还是有他的好的方面的

    于是做ajax之类的东东的时候就出现了另一个可以选择的数据传输方式:json 听上去好像某个美国人的名字叫“杰森” 哇哈哈英文没学好 这下人丢大了

    不要想得很神秘 其实他就是一个很长的字符串 跟xml一样按照某种格式来组织数据 json(JavaScript Object Notation)是javascript 里的对象 就是说java脚本解析他不需要其他任何附带的东西 如果你想要在其他程序或者语言(比如c# java)里解析他 请在www.json.org 下载相应的 别人写好的程序集 你也可以自己写一个 javaScript里定义数据的方式:

     1 var user = {
     2     "username": "andy",
     3     "age": 20,
     4     "info": {
     5         "tel": "123456",
     6         "cellphone": "98765"
     7     },
     8     "address": [{
     9         "city": "beijing",
    10         "postcode": "222333"
    11     },
    12     {
    13         "city": "newyork",
    14         "postcode": "555666"
    15     }
    16 }
    17 
    18 //javascript里获得数据的方式:
    19 alert(user.username);
    20 alert(user.age);
    21 alert(user.info.cellphone);
    22 alert(user.address[0].city);
    23 alert(user.address[0].postcode);
    24 // 就这么简单 嗯 奇怪了 不是说是字符串吗 怎末看着不像啊,被骗了 不是的 其实你可以在你的程序里返回一个这样的字符串
    25 //string aa="{name:'jackie',age:20,phone:'48956875'}"

    在java脚本里如果要获得这个人的年龄那么就是:aa.age 简单吧 切记一条就是:如果是[]里的就用索引取值 跟程序里一样:[0] 如果是{}里的就 直接对象.属性 :person.age   并且他还可以存储各种类型的值(int string bool)

    不足的是有很多方面比xml欠缺了很多 比如无法获得他子结点的个数 值是否为空 好像也不能判断 不过这样已经很好了

    具体请看:www.json.org

  • 相关阅读:
    使用Boost Regex 的regex_search进行遍历搜索
    最全的libcurl库资源整理
    curl的http上传文件代码
    boost::property_tree读取解析ini文件--推荐
    UrlDecode
    C++、VC++、MFC网页自动注册、登陆、发帖、留言,QQ注册、QQ申请器源码、注册邮箱源码、自动发帖源码
    DUILIB入门简明教程
    MFC/VC CxImage 简单配置与使用 (完整版)
    几款国产开源的Windows界面库
    C++文件读写详解(ofstream,ifstream,fstream)
  • 原文地址:https://www.cnblogs.com/assassinx/p/1864166.html
Copyright © 2020-2023  润新知