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. 常见的XMLHttpRequest.status状态码

    XMLHttpRequest.status状态码 1xx-信息提示 这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx响应. 100-继续. 101-切换协议. 2xx- ...

  2. 【转】使用cocos2d-console工具转换脚本为字节码

    从Cocos2D-X v2.1.4版本开始,增加了Cocos2D-console命令行工具,该工具的其中一个功能是:把.js文件转换为.jsc文件,该文件是字节码格式,可以提高代码的安全性. 使用这个 ...

  3. Open vSwitch安装及配置

    一. Open vSwitch简介 1.1概述 Open vSwitch是一个高质量的.多层虚拟交换机,使用开源Apache 2.0许可协议,由Nicira Networks开发,主要实现代码为可移植 ...

  4. 2016-2017 ACM-ICPC, NEERC, Southern Subregional Contest (Online Mirror, ACM-ICPC Rules, Teams Preferred) G 优先队列

    G. Car Repair Shop time limit per test 2 seconds memory limit per test 512 megabytes input standard ...

  5. sgu259 Printed PR    贪心

    link:http://acm.sgu.ru/problem.php?contest=0&problem=259 思路就是贪心. 首先要读懂题目,输入的方式,把样例读懂. 第一,打印的总时间一 ...

  6. POJ 1321 棋盘问题 --- DFS

    POJ 1321 题目大意:给定一棋盘,在其棋盘区域放置棋子,需保证每行每列都只有一颗棋子. (注意 .不可放 #可放) 解题思路:利用DFS,从第一行开始依次往下遍历,列是否已经放置棋子用一个数组标 ...

  7. Codeforces Round #339 Div.2 C - Peter and Snow Blower

    Peter got a new snow blower as a New Year present. Of course, Peter decided to try it immediately. A ...

  8. read the python code and predict the results --- from <Learn Python The Hard Way>

    import random from urllib import urlopen import sys WORD_URL = "http://learncodethehardway.org/ ...

  9. Threadpool dump

    Microsoft (R) Windows Debugger Version 10.0.10586.567 AMD64Copyright (c) Microsoft Corporation. All ...

  10. 11g新特性与12c新特性

    1. 11g新特性概图 管理新特性> 开发新特性> 2. 12c 新特性概图