【问题标题】:Can flatbuffers parse json given a generated type?给定生成的类型,flatbuffers 可以解析 json 吗?
【发布时间】:2021-12-03 12:49:57
【问题描述】:

使用flatc生成类型后,能否将一串JSON解析成该类型?

documentation,我们可以看到

这与命令行编译器的工作方式类似:由同一个 Parser 对象解析的文件序列允许后面的文件引用早期文件中的定义。通常这意味着您首先加载一个模式文件(它使用定义填充 Parser),然后是一个或多个 JSON 文件。

sample_text.cpp中有sample code

ok = parser.Parse(schemafile.c_str(), include_directories) &&
     parser.Parse(jsonfile.c_str(), include_directories);

但是,这意味着我必须将原始 .fbs 架构文件与我的应用程序一起分发。由于我已经在构建期间使用flatc 生成了 C++ 类型,我是否可以将 JSON 字符串解析为这种类型,而不必在运行时再次解析模式?

【问题讨论】:

    标签: c++ flatbuffers


    【解决方案1】:

    不,您目前不能。生成的代码中没有 JSON 解析代码。

    不过,解析架构确实很快,您可以重用已解析多个 JSON 文件架构的 Parser 对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-17
      • 1970-01-01
      • 2010-12-29
      相关资源
      最近更新 更多