C 中的快速 XML 解析器库
Expat XML Parser 是一个用 C 编写的面向流 XML 解析器。这个 实用程序软件是第一个可用的开源 XML 解析器。它在各种开源软件中占有一席之地,例如Apache HTTP 服务器, Mozilla、PHP 和 Python。 Expat 擅长处理太大而无法容纳 RAM 的文件,并且性能和灵活性至关重要。它是一个免费程序,您可以在 MIT/X Consortium 许可下复制、分发和修改它。
什么是 Expat XML Parser?
如上所述,Expat 是一个面向流的解析器。在应用程序中,您向解析器注册回调或 处理程序 函数。然后你开始喂它文件。然后解析器将识别文档的某些部分并为该部分调用适当的处理程序,假设您已经注册了一个。然后文档将被分片送入解析器,因此您可以在获得所有文档之前开始解析。有了这个,您可以解析非常大的文档,这些文档无法放入内存。
用户,尤其是初学者,会发现这个应用程序有点吓人 strong> 因为您可以设置多种处理程序和选项。但是,您只需学习 四个功能 即可完成 90% 的操作。您可以使用 XML_ParserCreate 创建一个新的解析器对象,并使用 XML_SetElementsHandler 设置开始和结束标记的处理程序。要为文本设置处理程序,您可以使用 XML_SetCharacterDataHandler。最后,XML_Parse 允许您将一个充满文档的缓冲区传递给解析器。
通常,程序为 XML 元素注册处理函数以启动或停止事件和字符事件. Expat 为复杂的事件处理提供了便利。它的解析事件类似于 XML 示例 API (SAX) 中定义的事件。但是,Expat 不是符合 SAX 的解析器。包含 Expat 库的项目通常在 Expat 之上构建 SAX(可能还有 DOM 解析器)。但是,虽然这个应用程序主要是基于流的,但它支持在任意时间停止和重新开始解析。有了这个,拉解析器的实现就比较容易了。
有用的解析器库
自投放市场以来,Expat XMLP Parser 一直是一个有用的工具。它已成为许多更高级别项目的选择。它高效且非常健壮。它还经过充分测试并符合标准。由于它有许多处理程序和选项,它可能有点让人不知所措,但总而言之,这个应用程序不会出错。
用户对 Expat XML Parser 的评分
您是否尝试过 Expat XML Parser?成为第一个离开您的意见!