libxml库提供了一些.net风格的函数,以流的形式来读取并分析xml文件.
<libxml/xmlreader.h>
xmlTextReader xmlTextReaderPtr //XmlReader的结构体及其指针
xmlTextReaderPtr xmlReaderForFile (const char * filename, const char * encoding, int options) //打开一个xml文件并返回xmlreader对象,准备开始分析.
int xmlTextReaderRead (xmlTextReaderPtr reader) //读取下一个节点(注意,是下一个,不是下一个同层节点)
int xmlTextReaderNext (xmlTextReaderPtr reader) //读取下一个同层节点
int xmlTextReaderNodeType (xmlTextReaderPtr reader) //判断当前节点的类型
xmlChar *xmlTextReaderGetAttribute (xmlTextReaderPtr reader, const xmlChar * name) //获取当前节点的指定属性
xmlChar *xmlTextReaderReadString (xmlTextReaderPtr reader) //读取当前节点下的text
xmlNodePtr xmlTextReaderExpand (xmlTextReaderPtr reader) //将当前节点展开成一个节点对象(慎用)
int xmlTextReaderHasValue (xmlTextReaderPtr reader) //判断当前节点是否有text值
int xmlTextReaderHasAttributes (xmlTextReaderPtr reader) //判断当前节点是否包含属性
int xmlTextReaderMoveToAttribute (xmlTextReaderPtr reader, const xmlChar * name) //移动指针到当前节点的指定属性名的属性
int xmlTextReaderMoveToAttributeNo (xmlTextReaderPtr reader, int no) //移动指针到当前节点指定属性编号的属性
int xmlTextReaderMoveToElement (xmlTextReaderPtr reader) //将指针移会当前节点
int xmlTextReaderMoveToFirstAttribute (xmlTextReaderPtr reader) //将指针移动到当前节点的第一个属性
int xmlTextReaderMoveToNextAttribute (xmlTextReaderPtr reader) //将指针移动到当前节点的下一个属性
xmlChar *xmlTextReaderName (xmlTextReaderPtr reader) //返回当前节点的名字
分享到:
相关推荐
**libxml2开源库详解** libxml2是一个广泛使用的开源XML解析库,它由Gnome项目维护,并在GNU Lesser General Public License(LGPL)下发布。这个库的主要目标是提供高效、灵活且易于使用的XML处理功能,使得开发...
**libxml2-2.9.1:XML处理的核心库** Libxml2是XML处理的基石,它是一个功能强大、高效且广泛使用的C语言库。这个版本2.9.1代表了该库的一个稳定更新,提供了对XML文档的全面支持,包括解析、验证、编码、查询和...
1. **下载libxml2**: 首先,你需要找到适用于64位Windows的libxml2二进制包。标题提到的“2.9.1”可能是libxml2的一个特定版本号,表示你需要下载对应的版本。通常可以从官方项目网站或者第三方镜像站点获取。 2. *...
libxml2是一个用来解析XML文档的函数库。它用 C 语言写成,并且能被多种语言所调用,如 C、C++、XSH、C#、Python、Kylix、Delphi、Ruby、PHP 等。 注:先解压得到libxml2-2.9.1.tar.gz文件,然后再拷贝到linux系统...
4. **XML编码转换**:libxml2库包含各种字符编码的转换函数,确保XML文档在不同编码环境中的兼容性。 5. **内存管理**:libxml2提供了一套完善的内存管理机制,自动处理内存分配和释放,防止内存泄漏。 6. **HTTP...
**libxml2源码文件详解** Libxml2是一款强大的XML解析库,主要由法国的Daniel Veillard开发,最初是为Gnome项目设计的,但它的跨平台性使其在各种操作系统和环境中都得到了广泛的应用,包括Linux、Windows以及Mac ...
《深入理解libxml2在Python中的应用》 libxml2是一个强大的XML解析库,由Gnome项目开发并维护,广泛应用于各种操作系统环境,包括Linux、Windows以及Mac OS X等。这个名为"libxml2-2.9.7.tar.gz"的压缩包文件,包含...
Ubuntu11.10 libxml2-dev 安装包 libxml2_2.7.8.dfsg-4_i386.deb libxml2-dev_2.7.8.dfsg-4_i386.deb python-libxml2_2.7.8.dfsg-4_i386.deb zlib1g_1.2.3.4.dfsg-3ubuntu3_i386.deb zlib1g-dev_1.2.3.4.dfsg-3...
#### 二、libxml2简介 libxml2是一个广泛使用的C语言库,用于处理XML文档。它提供了丰富的API接口,可以方便地完成XML文档的解析、编辑等工作。libxml2不仅支持标准的XML文档处理功能,还支持XPath查询、XSLT转换等...
libxml2-2.9.14源码包包含了库的全部源代码,开发者可以通过阅读和分析这些源码来深入理解其工作原理,进行二次开发或定制。源码中的主要头文件和源文件如下: - `xmlreader.h/xmlreader.c`:实现XML流读取接口。 -...
libxml是一个用来解析XML文档的函数库。它用C语言写成, 并且能为多种语言所调用,例如C语言,C++,XSH。C#, Python,Kylix/Delphi,Ruby,和PHP等。Perl中也可以使用XML::LibXML模块。它最初是为GNOME开发的项目,但...
这是一个静态链接库文件,它包含了LibXML2的所有函数和数据结构实现。在Windows开发环境中,当你编译和链接C或C++程序时,这个库文件将提供解析、编写、修改和查询XML文档的功能。`libxml2.lib`包含了诸如解析XML...
libxml2.so.2
- 头文件:libxml2的头文件包含了所有公开的函数声明和类型定义,它们通常位于`include/libxml`目录下。在编译时,需要将这个目录添加到编译器的搜索路径中。 - 源代码:源代码提供了libxml2内部实现的细节,有助...
libxml2是GNU项目的一个开源库,由Daniel Veillard开发,它为C语言提供了强大的XML处理功能,包括解析、创建、修改和序列化XML文档。本示例代码将带你了解如何在Linux平台上使用libxml2库进行XML解析。 首先,让...
在C或C++程序中,通过`#include <libxml/xml.h>`引入libxml2的头文件,然后可以使用库提供的函数来处理XML文档。例如,`xmlParseDoc()`用于解析XML文档,`xmlDocGetRootElement()`用于获取文档的根元素,`xmlFreeDoc...
同时,libxml2库具有良好的性能和内存管理机制,使其成为XML处理的首选工具之一。 关联库libxslt是XSLT(一种转换XML的样式表语言)的实现,它基于libxml2,可以用来将XML文档转换成HTML或其他格式。而tinyxml则是...
《深入解析libxml2:XML解析与工具库的明珠》 libxml2是GNOME项目中的XML C解析器和工具库,它为开发者提供了一套强大的API,用于处理XML、HTML、XInclude、XPath、XPointer、XSLT、SGML、DTD、Namespaces等多种XML...
**二、libxml2-2.9.8编译步骤** 在开始编译之前,确保你的系统已经安装了必要的依赖项,例如`zlib`、`iconv`和`libpthread`。下面是编译libxml2-2.9.8的基本流程: 1. **下载源代码**:从官方仓库或镜像站点获取...
例如`xmlDocPtr`用于创建和管理XML文档对象,`xmlNodePtr`表示XML文档中的节点,`xmlChar`是libxml2用来表示字符串的类型,以及`xmlNewNode`、`xmlNewProp`、`xmlSetProp`等用于创建和操作节点及属性的函数。...