Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;事件驱动json流读取器_C++_Json_Streamreader - Fatal编程技术网

C++ C++;事件驱动json流读取器

C++ C++;事件驱动json流读取器,c++,json,streamreader,C++,Json,Streamreader,我刚刚发现了YAJL项目,它正好满足了我的需要 从流中读取 对每个有效的已解析令牌进行回调 新数据到达时重新分析不完整的json 但是我更喜欢C++。当然,我可以使用这个库从C++项目甚至写自己的包装器,如果我真的想,但无论如何,本地C++是优选的。 我查看了JsonCPP,但它似乎无法从流中读取不完整的json数据 是否还有其他用于解析JSON流的C++库? 还有一些要求: 轻巧。增压或Qt不合适 我需要的东西,我可以自由使用的商业封闭源码软件(麻省理工学院,公共领域,等等) 支持不阻塞

我刚刚发现了YAJL项目,它正好满足了我的需要

  • 从流中读取
  • 对每个有效的已解析令牌进行回调
  • 新数据到达时重新分析不完整的json
但是我更喜欢C++。当然,我可以使用这个库从C++项目甚至写自己的包装器,如果我真的想,但无论如何,本地C++是优选的。 我查看了JsonCPP,但它似乎无法从流中读取不完整的json数据

是否还有其他用于解析JSON流的C++库?

还有一些要求:

  • 轻巧。增压或Qt不合适
  • 我需要的东西,我可以自由使用的商业封闭源码软件(麻省理工学院,公共领域,等等)
  • 支持不阻塞读取。或允许馈送数据(附加传入数据)

最近我搜索了具有类似要求的库, 实际上,只有1.5个库支持这些要求:

  • 一个标题库,
    BSD
    license,具有如下界面:

    Iter parse(value& out, const Iter& first, const Iter& last, std::string* err);
    
    因此,您可以使用几行代码创建
    附加\u传入\u数据

  • 一个文件库,许可证类似于
    BSD
    c++11
    支持,但接口 允许解析部分来自网络
    json
    它需要补丁:
  • p.S.

    轻巧。增压或Qt不合适

    事实上,它们并不适合,因为

    允许输入数据

    现在
    Qt5
    json
    boost
    属性树
    都无法解析 半就绪
    json

    其他选项包括

    • -解析基于指定的架构
    • -基于普通事件的解析器

    我至少有几个C++实现。在主页上向下滚动。其中没有一个是合适的。我将用更多的要求来修正我的问题。单独使用C++有11种不同的实现方式(不包括C)。当然有一个可以满足您的需要?它们都有一些缺陷:阻塞和没有feed方法,期望完整的json,愚蠢的实现只允许解析json的子集。这是第一眼看到的。也许我错了some@Rion你找到你想要的了吗?