博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++:json字符串拼接,json对象组装
阅读量:4302 次
发布时间:2019-05-27

本文共 2338 字,大约阅读时间需要 7 分钟。

c++算法使用json输出最终结果给java使用,于是,开始了json对象的组装之旅...

首先,对不同数据类型,封装不同的数据组装函数

 

/** * 拼接int */std::string getKeyValue(std::string sKey, int iValue){    char szDoubleQutoes[] = "\"";    char szColon[] = ":";    char szValue[50] = { 0 };    std::string strResult;    strResult.append(szDoubleQutoes);    strResult.append(sKey);    strResult.append(szDoubleQutoes);    strResult.append(szColon);    sprintf(szValue, "%d", iValue);    strResult.append(szValue);    return strResult;}/** * 拼接float,保留3位 */std::string getKeyValue(std::string sKey, float fValue){    char szDoubleQutoes[] = "\"";    char szColon[] = ":";    char szValue[50] = { 0 };    std::string strResult;    strResult.append(szDoubleQutoes);    strResult.append(sKey);    strResult.append(szDoubleQutoes);    strResult.append(szColon);    sprintf(szValue, "%0.3f", fValue);    strResult.append(szValue);    return strResult;}/** * 拼接string */std::string getKeyValue(std::string sKey, std::string sValue){    char szDoubleQutoes[] = "\"";    char szColon[] = ":";    std::string strResult;    strResult.append(szDoubleQutoes);    strResult.append(sKey);    strResult.append(szDoubleQutoes);    strResult.append(szColon);    strResult.append(szDoubleQutoes);    strResult.append(sValue);    strResult.append(szDoubleQutoes);    return strResult;}/** * 拼接object */std::string getKeyValueObject(std::string sKey, std::string sObject){    char szDoubleQutoes[] = "\"";    char szColon[] = ":";    std::string strResult;    strResult.append(szDoubleQutoes);    strResult.append(sKey);    strResult.append(szDoubleQutoes);    strResult.append(szColon);    strResult.append(sObject);    return strResult;}/** * 拼接array */std::string getKeyValueArray(std::string sKey, std::string sArray){    char szDoubleQutoes[] = "\"";    char szColon[] = ":";    std::string strResult;    strResult.append(szDoubleQutoes);    strResult.append(sKey);    strResult.append(szDoubleQutoes);    strResult.append(szColon);    strResult.append("[");    strResult.append(sArray);    strResult.append("]");    return strResult;}

调用,及最终json组装,增加 { }及,分隔符

 

int main() {    int value1 = 1;    float value2 = 1.0f;    std::string strJsonResult("{");    strJsonResult.append(getKeyValue("key1", value1));     strJsonResult.append(",");    strJsonResult.append(getKeyValue("key2", value2));    strJsonResult.append("}");}

 

转载地址:http://hwlws.baihongyu.com/

你可能感兴趣的文章
vue+springboot打包发布
查看>>
springboot+idea多环境配置打包
查看>>
一篇掌握mysql explain
查看>>
Sublime工具主题个人配置
查看>>
Maven安装与简单配置
查看>>
Maven依赖(一)
查看>>
Maven仓库和版本(二)
查看>>
Maven生命周期和插件(三)
查看>>
Maven私服搭建Nexus Sonatype(四)
查看>>
Java swing 简易文本编辑器
查看>>
有道云笔记修改背景图片
查看>>
有道云笔记修改护眼绿背景色-v6.8
查看>>
Typora护眼绿和夜色两种背景
查看>>
windows桌面上自由添加自定义文字软件--BgInfo
查看>>
【arm】——tx2 float16测试
查看>>
【ARMV7】——一段armv7代码的注释
查看>>
Decoupled Dynamic Filter Networks
查看>>
【Tengine端侧推理框架】——注册机制(一)
查看>>
【Tengine】——注册机制(二)
查看>>
【Tengine端侧推理框架】——模型序列解析器
查看>>