JSON消息格式:
{“jobIDs”:
["24324325435",
"ew32trt4ty45yt45"
]
}
filePath 存储JSON消息的文件
- int CParseJson::readBoostJson(string& filePath, vector<string>& jobID)
- {
- int ret = 0;
- ptree ptJobIDs, ptChild, readPt;
-
- read_json(filePath, readPt);
- if(readPt.count("jobIDs"))
- {
- ptree ptChildRead = readPt.get_child("jobIDs");
- for(BOOST_AUTO(pos, ptChildRead.begin()); pos != ptChildRead.end(); ++pos)
- {
- string job = pos->second.get_value<string>();
- jobID.push_back(job);
- }
- }
- else
- {
- LOG4CXX_DEBUG(logger, "no delete msg!");
- }
- return ret;
- }
-
- int CParseJson::writeBoostJson(string jobid, string& filePath)
- {
- int ret= 0 ;
- ptree ptJobIDs, ptChild, readPt;
-
- read_json(filePath, readPt);
- if(readPt.count("jobIDs"))
- {
- ptree ptChildRead = readPt.get_child("jobIDs");
- /*for(BOOST_AUTO(pos, ptChildRead.begin()); pos != ptChildRead.end(); ++pos)
- {
- string job = pos->second.get_value<string>();
- jobID.push_back(job);
- }*/
- readPt.erase("jobIDs");
- write_json(filePath, readPt);
-
- ptChildRead.push_back(make_pair("", jobid));
- readPt.push_back(make_pair("jobIDs", ptChildRead));
- write_json(filePath, readPt);
- }
- else
- {
- ptChild.push_back(make_pair("", jobid));
- ptJobIDs.push_back(make_pair("jobIDs", ptChild));
- write_json(filePath, ptJobIDs);
- }
- return ret;
- }