Qt中的JSON类与C++中其他JSON解析器的区别

4

我正在使用Qt作为我的IDE以及一些库来开发一个C++的服务器/客户端应用程序。在性能方面,有人告诉我,在服务器和客户端之间传输数据的最佳方式之一是通过JSON。然而,我想知道Qt中解析JSON的默认类(如QJsonArray、QJsonObject等)与其他C++解析器(例如JSON++)之间的性能差异。


我猜它们都足够快了。对于更快的解析阶段,可以考虑使用类似 Protocol Buffers 的东西。 - user2864740
1个回答

6
如果Qt类的性能不够好,您可以考虑使用RapidJson:https://github.com/miloyip/rapidjson 性能比较请查看: http://code.google.com/p/rapidjson/wiki/Performance RapidJson的好处(除了速度快)是易于安装和使用。从他们的网站上了解到:

rapidjson是一个头文件-only库。也就是说,唯一需要做的就是将rapidjson/include/rapidjson及其子目录复制到您的项目或其他包含路径中。

还有一个来自他们维基页面的例子:
#include "rapidjson/document.h"
#include <cstdio>

int main() {
    const char json[] = "{ \"hello\" : \"world\" }";

    rapidjson::Document d;
    d.Parse<0>(json);

    printf("%s\n", d["hello"].GetString());

    return 0;
}

谢谢回答,我会去看看的!:) 已点赞!! ;) - loukwn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接