`
v5browser
  • 浏览: 1140859 次
社区版块
存档分类
最新评论

用C++实现一个XML parser的必要工作。

 
阅读更多

考虑一个完整的XML Parser一般由几部分组成:

必要组件:

1. DOM 接口定义,以及DOM MODEL的实现。
2. 一个XML词法分析器,用于将XML字符流转换成TOKEN流。
3. 一个XML PARSER,将TOKEN流组织成DOM MODEL.
4. 一套在DOM NODE中遍历的数据结构和算法,NodeIterator,TreeWalker.
5. 一个DTD的词法分析器和DTD PARSER.
6. 一个XPATH表达式语言的编译器,将XPATH表达式编译成AST树。
7. 一个XPATH引擎,根据XPATH AST对DOM 树执行运算。
8. 一个XSLT引擎,完成XSLT的transform。
9. 如果需要支持XHTML,那么CSS PARSER也是必须的。

辅助组件:

1. 内存管理机制。
2. 支持各种编码和网络环境的File Reader.
3. COM封装。

分享到:
评论

相关推荐

    xmlParser.zip_C++ 大 XML_XML解析_xml parser_xmlparser_xmlparser v2.

    一个老外用C++写的xml打包和解析的类,很简单,但是功能很强大,并且是跨平台的,我这两年一直在用,强烈建议大家使用!!这是我目前用过的最好用的xmlparser.就包括两个文件xmlparser.h和xmlparser.cpp

    XMLParser(XML解析代码 C++版)

    我好朋友收集并且整理的XML解析工具,希望大家能用上。 特点:简单、超小、稳定 鼓励一下吧!

    XML parser_xmlparser_c++builderxml_

    XML parser for C++ Builder

    xmlparser library

    一个老外用C++写的xml打包和解析的类,很简单,但是功能很强大,并且是跨平台的,我这两年一直在用,强烈建议大家使用!! 这是我目前用过的最好用的xmlparser.就包括两个文件xmlparser.h和xmlparser.cpp 这是2008....

    Xerces XML parser for C++ under Linux OS

    XML-Parser named xerces, every one knows these, if you need it, cong.. i download it at 23:30 2010/3/25 this edition is for Linux source coding!

    simple cross platform xmlparser

    最简单的xmlparser解析器,老外写的,只有两个文件就搞定,.cpp 和.h文件,c++ DOM型

    xmlParser library for Symbian S60

    一个老外用C++写的xml打包和解析的类,但由于S60对static变量的限制因此无法直接使用,我简单修改了一下,可在S60下正常使用,感觉比S60自带的xml解析器好用多了,但从文件解析还有些问题。

    xml sdk c++

    微软提供的解析xml格式的SDK。要使用xml文件就一定要用到xml parser

    A JSON parser in C++

    JSON++ is a light-weight JSON parser, writer and reader written in C++. JSON++ can also convert JSON documents into lossless XML documents. Contributors http://github.com/hjiang ...

    C++ Header Parser by Python,C++头文件解析器

    是一个大佬写的,不是我自己写的,我试用了之后感觉不错,推荐给大家。 不过里面好像也有bug,就是注释的提取和我们通常的习惯稍有不同。 但是不关系注释提取的基本没有影响。 谁有空了也可以把这个问题调一调自己...

    xerces-c++-3.1.3

    Xerces是一个开放源代码的XML语法分析器。 Xerces-C++ 的前身是 IBM 的 XML4C 项目。XML4C 和 XML4J 是两个并列的项目,而 XML4J 是 Xerces-J——Java 实现——的前身。IBM 将这两个项目的源代码让与 Apache 软件...

    (Activex)XML.rar_ActiveX Visual C++_activex_xml

    use activex parser xml

    tinyxml源代码库

    TinyXML is a simple, small, minimal, C++ XML parser that can be easily integrating into other programs. It reads XML and creates C++ objects representing the XML document. The objects can be ...

    tinyxml_2_5_3.zip_tinyxml l_tinyxml.l_tinyxml.lib_xml l_xml pars

    c++ xml parser lib(opensource)

    Thinking in C++ 第二版 英文版

    Thinking in Java 作者Bruce Eckel 的C++ 编程思想英文版。 ...由于内部使用了MS XML Parser,本文档只适合在安装有MS XML3.0 Parser以上版本的Windows系统下阅读。一般XP系统都默认可以直接阅读。

    MacOS:Xerces

    Xerces-C++ is a validating XML parser written in a portable subset of C++. Xerces-C++ makes it easy to give your application the ability to read and write XML data. A shared library is provided for ...

    tinyxml帮助文档

    tinyxml帮助文档 TinyXML is a simple, small, C++ XML parser that can be easily integrated into other programs.

    tinyxml_2_5_3.rar_tinyxml_tinyxml sln_tinyxml 2 5 3_tinyxml2_xm

    解析xml的利器。TinyXML is a simple, small, C++ XML parser that can be easily integrating into other programs.

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    你可以将上面的myfile.xml修改一下,比如将改为,然后用IE5直接打开myfile.xml,会得到一个出错信息页面: <?xml version="1.0" encoding="GB2312"?> <title>XML轻松学习手册 <author>ajie <Email>ajie@aolhoo....

    TinyXML2 官方文档.rar

    TinyXML2(C++) 库的官方文档 TinyXML is a simple, small, C++ XML parser that can be easily integrated into other programs.

Global site tag (gtag.js) - Google Analytics