void *upload(void *pParam)
{
CUpSender *s = (CUpSender*)pParam;
map<string, string> mx;
char tmp[20] = {0};
char filename[50] = {0};
string data = "";
while(1)
{
mx.clear();
FileLog(FILENAME, "in thread m_urlcount = [%d]", s->m_urlcount);
while(s->m_urlcount == 0)
{
FileLog(FILENAME, "there is no count files....wait ten seconds!!!!");
sleep(10);
}
//这里是将id的那部分获取出来存入map中
for(int i = 1; i != s->m_urlcount + 1; i++)
{
memset(tmp, 0, sizeof(tmp));
memset(filename, 0, sizeof(filename));
snprintf(tmp, sizeof(tmp), "%d", i);
snprintf(filename, sizeof(filename), "/apps/hotel/run_env/bin/id/%d", i);
ifstream iis(filename);
getline(iis, mx[tmp]);
FileLog(FILENAME, "read urlcount from %d = %s", filename, mx[tmp].c_str());
}
//这里开始组合
Json::Value root;
Json::Value roott;
Json::Value arrayObj;
Json::Value item;
for(map<string, string>::iterator it = mx.begin(); it != mx.end(); it++)
{
item["id"] = it->first;
arrayObj.append(item);
}
roott["mac"] = s->m_strDevMac;
roott["uploadfrequency"] = s->m_uploadfrequency;
roott["urls"] = arrayObj;
root["uwdupload"] = roott;
data = root.toStyledString();
FileLog(FILENAME, "the thread will send to peng webservice data : [%s], url = [%s]", data.c_str(), (s->m_threadurl).c_str());
s->SendCmd1(data, s->m_threadurl);
FileLog(FILENAME, "the thread sleeptime is : [%d]", s->m_threadtime);
sleep(s->m_threadtime);
}
}

  上边是合成的过程。


"uwdupload":{
"mac": "F0:D1:A9:C9:56:E8",
"uploadfrequency": "180",
"urls": [
{
    "id": "1",
"total": "100",
},
{
    "id": "2",
"total": "50",
},
{
"id": "3",
"total": "20",
}
]
}

  这是合成的结果。思想类同解析。

jsoncpp用法通俗易懂之将数据合成json格式的更多相关文章

  1. 数据转换为json格式的方法

    数据转换为json格式: 如果一张表中存在主外键关系,模板自动生成的类是不可以转换成JSON格式的,此时需要重新写一个类,类前面需加[DataContract],字段前需加[DataMember],实 ...

  2. jmeter随笔(1)-在csv中数据为json格式的数据不完整

    昨天同事在使用jmeter遇到问题,在csv中数据为json格式的数据,在jmeter中无法完整的取值,小怪我看了下,给出解决办法,其实很简单,我们一起看看,看完了记得分享给你的朋友. 问题现象: 1 ...

  3. C# 任意类型数据转JSON格式(转)

    HOT SUMMER 每天都是不一样,积极的去感受生活 C# 任意类型数据转JSON格式 /// <summary> /// List转成json /// </summary> ...

  4. 关于多条数据转为json格式单次传输的问题 2017.05.27

    数据形式如下: var mycars = [];//定义数组存放多条数据 for(var i=0;i<2;i++){ var jsonData = {};//定义变量存放单条数据 jsonDat ...

  5. 了解php数据转json格式与前端交互基础

    php数据转json格式与前端交互 ArryJson1.php <?php $test=array(); $word=array("我12","要43", ...

  6. 接口数据转json格式

    接口数据转json格式 function tojson($result, $callback = null){ header('Content-Type:text/html; charset=utf- ...

  7. jmeter 导入csv数据中json格式数据取值不完整

    1.jmeter中添加csv数据文件时,数据是json格式 2.jmeter中执行取值发现只取了一部分 分析原因,json格式数据,中间有逗号,而csv是根据逗号来分割的,这回导致我们取值错位. 解决 ...

  8. jsoncpp用法通俗易懂之解析

    刚工作不久,最近遇到一个要解析一个web服务器发过来的json格式的文件,文件如下: { "global": { "renew": "true&quo ...

  9. jquery下php与ajax的互传数据(json格式)自我总结

    研究了一整天的json数据与ajax的数据传输,现在进行一个小的自我总结,仅供参考 1.关于ajax的认识 $.ajax(),是jquery下包装好的一个函数:参考地址:http://www.w3sc ...

随机推荐

  1. 纯 CSS 创建一个三角形

    [要求]:用纯CSS创建一个三角形的原理是什么? ♪ 答: 把上.左.右三条边隐藏掉(颜色设为 transparent) [实现]: #demo { width: 0; height: 0; bord ...

  2. 如何选择分类器?LR、SVM、Ensemble、Deep learning

    转自:https://www.quora.com/What-are-the-advantages-of-different-classification-algorithms There are a ...

  3. eclipse关联源码 Failed to create the part's controls

    在eclipse中关联源码时: 1.出现Failed to create the part's controls错误, 2.而attach source 这个按钮却没有出现. 问题原由:eclipse ...

  4. RG100A-AA 中大校园网上网及远程配置

    由于无线网卡用得不爽,wifi经常断,所以想整个路由器,造福群众.在朋友介绍下购得一台已经刷好 Openwrt 的上海贝尔RG100A-AA路由器,根据下面的简单步骤,就能连接上校园网. 一.准备工作 ...

  5. Java-->PrintStream

    --> 用过之后都不想用read.write了,感觉还是挺方便的... package com.dragon.java.hwletter; import java.io.BufferedRead ...

  6. rsync 使用示例

    导读 Rsync(remote sync) 是用于同步某一位置文件和目录到另一位置的有效方法.备份的位置可以在本地服务器或远程服务器.本站之前亦有介绍rsync的安装配置和教程,详看<rsync ...

  7. Jquery判断滚动条是否到达窗口顶部和底部

    <script type="text/javascript"> $(document).ready(function(){     alert($(window).he ...

  8. form的onsubmit事件--表单提交前的验证最佳实现方式

    今天遇到了一个问题,页面中include了很多的公共页面(都是没有form的),并且里面好多的地方都是自行提交的(页面中加入一个type=“submit”域,然后js中写入sumbit.click来执 ...

  9. numpy常用函数

    numpy.ndarray.astype  更改np.array的类型.

  10. 穿越泥地(mud) (BFS)

    问题 C: 穿越泥地(mud) 时间限制: 1 Sec  内存限制: 128 MB提交: 16  解决: 10[提交][状态][讨论版] 题目描述 清早6:00,FJ就离开了他的屋子,开始了他的例行工 ...