【发布时间】:2014-10-09 18:12:35
【问题描述】:
我正在处理一项任务,它必须读取一个 json 文件并将其存储在字符串缓冲区数组中。使用 struct Collection 收集对象、名称和值对。
示例 JSON:
0 {
1 "Obj": {
2 "Hello": "working",
3 "Test": "working"
4 }
我能够提取它,并将其存储在结构集合中。我正在使用:(循环中)
if(buffer[line_number].find('{')!=string::npos) {
然后使用 substr 来存储它。
问题是如果“{”包含在对象或名称-值对中,这将不允许。
{
"Obj": {
"Hello": "Working {Not working}"
}
{ 包含值。
struct Collection {
string ObjName;
string name[50];
string Value[50]
}
【问题讨论】:
-
数字 50 有什么神奇之处?见std::vector。另请参阅conforming JSON parsers at json.org 的现有 C 和 C++ 实现,了解实现技术的调查。