2017-02-27 59 views
0

我使用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,并且喜欢在我的应用程序中具有与原生相同的结果。

任何想法?

感谢您的任何建议!

回答

1

替换PrettyWriterWriter

你也可以压缩内容。这将显着减小尺寸。

+0

相当明显,但完全没有认出这两位不同的作家:)非常感谢! –