从rapidjson中缩小输出
问题描述:
我使用rapidjson输出一些数据,用于对算法的内部运行时快照等C++程序算法进行统计和绘图。从rapidjson中缩小输出
I输出JSON是这样的:
string filename="output.json";
StringBuffer sb;
PrettyWriter<StringBuffer> writer(sb);
writer.StartArray();
for (std::vector<O_Class>::const_iterator netItr = O_Class_Array.begin(); netItr != O_Class_Array.end(); ++netItr)
netItr->Serialize(writer);
writer.EndArray();
ofstream out;
out.open(filename);
out << sb.GetString() ;
随着文件变得相当大(〜100MiB)我想输出精缩JSON,但我没有找到这样的记录方式。 使用外部缩小器我将文件大小从100缩小到18MB,并且喜欢在我的应用程序中具有与原生相同的结果。
任何想法?
感谢您的任何建议!
答
替换PrettyWriter
为Writer
。
你也可以压缩内容。这将显着减小尺寸。
相当明显,但完全没有认出这两位不同的作家:)非常感谢! –