【问题标题】:How to implement a parser in C for xml based structured language? [closed]如何在 C 中为基于 xml 的结构化语言实现解析器? [关闭]
【发布时间】:2017-08-14 08:01:38
【问题描述】:

我需要在 C 中实现一个简单的解析器(或者 C++,如果 C 不适合这个应用程序),它将读取一个 xml 文件,该文件将只包含几个元素(这就是为什么称它为基于 xml),即只有 4 个根元素并且总共少于 5 个子元素。 它易于实现还是我应该使用像 expat 这样的库?如果可能的话,有人可以告诉我如何处理这个过程吗?

【问题讨论】:

  • 使用库。如果您对解析一无所知,那么一定要使用库。
  • 不要低估为非常简单的语言编写解析器的复杂性。使用库,会容易得多。
  • 我的任务变得更复杂了。我的数据采用基于 XML 的二进制编码方案的形式。因此,我应该直接解析传输的二进制表示或恢复 XML 表示。有人可以详细介绍一下数据解析的基础知识吗?

标签: c++ c xml-parsing expat-parser


【解决方案1】:

使用 libxml 或 libexpat。 您可以在网上找到数百万、数万亿个示例,甚至可以在 StackOverflow 上找到。 看看这个:How can libxml2 be used to parse data from XML?

【讨论】:

    【解决方案2】:

    或使用谷歌protobuf, 虽然不是基于xml的,但是速度很快。

    【讨论】:

    • 它也不会解析 XML,这使得它对提问者毫无用处。
    • 是的,以防 XML 不是真正的需求。
    猜你喜欢
    • 1970-01-01
    • 2018-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-23
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    相关资源
    最近更新 更多