zoukankan      html  css  js  c++  java
  • c++json构建与解析组件 RapidJSON 没用过永远不会知道有多好用

    参考资料:

    官方文档
    推荐【腾讯RapidJSON】学习笔记

    原理请参考以上资料

    构建json

    Document doc;
    Document::AllocatorType &allocator=doc.GetAllocator(); //1.获取分配器
    doc.SetObject();
    //2,给doc对象赋值
    
        Value pnameValue;pnameValue.SetString(StringRef(pname.c_str()));//创建"key":"value"
        Value tagsValue;tagsValue.SetObject();//创建{}
        tagsValue.AddMember("pname",pnameValue,allocator);
        doc.AddMember("tags",tagsValue,allocator);
        Value tempV;
        tempV.SetString(StringRef(value.c_str()));//std::string value("test");
        doc.AddMember("value",tempV,allocator);
     //3,将doc对象的值写入字符串
        StringBuffer buffer;  
    //PrettyWriter<StringBuffer> writer(buffer);  //PrettyWriter是格式化的json,如果是Writer则是换行空格压缩后的json  
            Writer<StringBuffer> writer(buffer);
            doc.Accept(writer); 
            return buffer.GetString();

    效果:

        {"tags": {"pname"="xxx"},"value":"123, 123, 456, 123"}

    解析Json

  • 相关阅读:
    XML Schema (1)
    xml
    java输入输出流(内容练习)
    Java中I/O的分析
    java File类
    java中Map的用法(HaspMap用法)
    Git
    oracle安装分析
    博客第一天
    正则化 L1 L2
  • 原文地址:https://www.cnblogs.com/pzqu/p/9457615.html
Copyright © 2011-2022 走看看