jsoncpp用法通俗易懂之将数据合成json格式
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格式的更多相关文章
- 数据转换为json格式的方法
数据转换为json格式: 如果一张表中存在主外键关系,模板自动生成的类是不可以转换成JSON格式的,此时需要重新写一个类,类前面需加[DataContract],字段前需加[DataMember],实 ...
- jmeter随笔(1)-在csv中数据为json格式的数据不完整
昨天同事在使用jmeter遇到问题,在csv中数据为json格式的数据,在jmeter中无法完整的取值,小怪我看了下,给出解决办法,其实很简单,我们一起看看,看完了记得分享给你的朋友. 问题现象: 1 ...
- C# 任意类型数据转JSON格式(转)
HOT SUMMER 每天都是不一样,积极的去感受生活 C# 任意类型数据转JSON格式 /// <summary> /// List转成json /// </summary> ...
- 关于多条数据转为json格式单次传输的问题 2017.05.27
数据形式如下: var mycars = [];//定义数组存放多条数据 for(var i=0;i<2;i++){ var jsonData = {};//定义变量存放单条数据 jsonDat ...
- 了解php数据转json格式与前端交互基础
php数据转json格式与前端交互 ArryJson1.php <?php $test=array(); $word=array("我12","要43", ...
- 接口数据转json格式
接口数据转json格式 function tojson($result, $callback = null){ header('Content-Type:text/html; charset=utf- ...
- jmeter 导入csv数据中json格式数据取值不完整
1.jmeter中添加csv数据文件时,数据是json格式 2.jmeter中执行取值发现只取了一部分 分析原因,json格式数据,中间有逗号,而csv是根据逗号来分割的,这回导致我们取值错位. 解决 ...
- jsoncpp用法通俗易懂之解析
刚工作不久,最近遇到一个要解析一个web服务器发过来的json格式的文件,文件如下: { "global": { "renew": "true&quo ...
- jquery下php与ajax的互传数据(json格式)自我总结
研究了一整天的json数据与ajax的数据传输,现在进行一个小的自我总结,仅供参考 1.关于ajax的认识 $.ajax(),是jquery下包装好的一个函数:参考地址:http://www.w3sc ...
随机推荐
- Hadoop no.1
解决的问题: 1. 磁盘读取速度慢:磁盘容量大了,将一个大的文件存在磁盘上,但读取速度慢. 解决方法:hdfs将文件拆开存在不同的节点(datanode)上,namenode记载文件存储的位置( ...
- dos快速通道
要在文件夹的右键菜单中添加“命令提示符”选项.在注册表HKEY_CLASSES_ROOT\Directory\shell分支下新建一项“CommandPrompt”,修改右侧窗格中的“默认”键值为“命 ...
- win live
ok, this is my first live blog; just for test. r U ok fmkf vdsvsvv svsvsvsv try{ }
- pyvcf 模块
最近一直在处理samtools freebayes gatk 产生的snp数据, 结果文件都是vcf,于是自己就写了相应的类,但是总是不够完善. 海宝推荐这个模块,他都推荐了 我还抱着我那烂代码不放干 ...
- Sqlserver 远程连接的 TCP/IP 和 Named Pipes的区别
TCP/IP: TCP/IP是 Internet 上广泛使用的通用协议.它与互连网络中硬件结构和操作系统各异的计算机进行通信.TCP/IP包括路由网络流量的标准,并能够提供高级安全功能.它是目前在商 ...
- HTML <meta> 标签 遇到<meta http-equiv="refresh" content="0; url=">详解
页面定期刷新,如果加url的,则会重新定向到指定的网页,content后面跟的是时间(单位秒),把这句话加到指定网页的<head></head>里一般也用在实时性很强的应用中, ...
- spring mvc 重定向传参
参考链接如下: http://bbs.csdn.net/topics/391034118?page=1 自己的示例程序: 详细页面提交一个修改动作,修改完成后跳转到检索页面,把检索条件重新赋值给检索页 ...
- (转)ubuntu 14.04下安装hadoop2.6(伪分布式)
安装: http://pingax.com/install-hadoop2-6-0-on-ubuntu/ 写的非常好(国外人比较实在,他说的单机实际上是伪分布式...). 另外要注意的是,如果对新 ...
- 求10000以内n的阶乘
总时间限制: 5000ms 内存限制: 655360kB 描述 求10000以内n的阶乘. 输入 只有一行输入,整数n(0<=n<=10000). 输出 一行,即n!的值. 样例输入 ...
- spark优化之优化数据结构
概序: 要减少内存的消耗,除了使用高效的序列化类库以外,还有一个很重要的事情,就是优化数据结构.从而避免Java语法特性中所导致的额外内存的开销,比如基于指针的Java数据结构,以及包装类型. 有一个 ...