• 轻量级交互数据json格式初探


    [w3cschool tydef]
    什么是 JSON ?
    JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
    JSON 是轻量级的文本数据交换格式
    JSON 独立于语言 *
    JSON 具有自我描述性,更易理解
    * JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。
    JSON 语法是 JavaScript 语法的子集。

    为什么要用json
    在异步应用程序中发送和接收信息时,可以选择以纯文本和 XML 作为数据格式。掌握 Ajax 的这一期讨论另一种有用的数据格式 JavaScript Object Notation(JSON),以及如何使用它更轻松地在应用程序中移动数据和对象。
    简 单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪(稍后会看到几个示例),但是 JavaScript 很容易解释它,而且 JSON 可以表示比名称/值对更复杂的结构。

    特点
    类似 XML
    JSON 是纯文本
    JSON 具有“自我描述性”(人类可读)
    JSON 具有层级结构(值中存在值)
    JSON 可通过 JavaScript 进行解析
    JSON 数据可使用 AJAX 进行传输

    相比 XML 的不同之处
    没有结束标签
    更短
    读写的速度更快
    能够使用内建的 JavaScript eval_r() 方法进行解析
    使用数组
    不使用保留字

    使用 JSON
    读取 JSON 字符串
    用 eval_r() 处理 JSON 字符串

    json c++ api 很不错的博客,全了。
    http://hi.baidu.com/jiangyangw3r/blog/item/bfedc1ce59b23e0c92457e14.html

    c++打json包的一个例子
    #include

    class JsonGuard
    {

        public:
            JsonGuard(json_object *obj) : m_obj(obj){}
            ~JsonGuard(){
                json_object_put(m_obj);
            }  
        private:
            json_object *m_obj;
    };

    void testjson()
    {
        cout << "test json begin!" << endl;
        json_object *obj = json_object_new_object();
        JsonGuard jsonGuard(obj);
        // 打一个学生的json格式的信息
        int id = 1;
        json_object_object_add(obj, "id", json_object_new_int(id));
        string name("huangfengxiao");
        json_object_object_add(obj, "name", json_object_new_string(name.c_str()));

        json_object *subobj = json_object_new_object();//subobj
        string mathadd("A-404");
        json_object_object_add(subobj, "math", json_object_new_string(mathadd.c_str()));
        string chineseadd("A-404");
        json_object_object_add(subobj, "chineseadd", json_object_new_string(chineseadd.c_str()));
        json_object_object_add(obj, "subjectaddr", subobj);

        const char *jsData = json_object_to_json_string(obj);
        cout<<jsData<<endl;
        cout << "test json end!" << endl;
    }

  • 相关阅读:
    css3
    如何去把数据渲染到页面
    js中的正则
    12.4
    react-router HashRouter和BrowserHistory的区别
    react 路由使用react-router-dom
    react 中的 三大重要属性state refs props
    在Vue中如何快速实现小球动画
    模块化 require.js 入门教学(前端必看系列)
    如何把设计稿中px值转化为想要的rem值
  • 原文地址:https://www.cnblogs.com/ruiy/p/cPPJson.html
Copyright © 2020-2023  润新知