libxml2的安装及使用[总结]

  • 时间:
  • 浏览:5
  • 来源:5分3D_5分排列5

(2)解析xml文档

测试进程运行如下所示:

1、前言

编译命令如下:gcc -g create_phone_book.c -o create_phone_book -I /usr/local/include/libxml2/ -lxml2 

  xmlReadFile函数读入一一三个 带一种生活编码的xml文件,并返回文件指针;细节见libxml2参考手册。

  xmlDocSetRootElement函数能将一一三个 节点设置为某个文件的根节点

执行结果如下图所示:

测试结果如下所示:

注意:libxml2默认安装入去/usr/local/include/libxml2目录下

  xml按照树形形态进行存储,节点分为元素和文本,还要有根节点。如下的xml文件:

4、测试例子

     1)$./configure

              2)$make              3)$make install安装完毕。

     文档类型xmlDoc,指针类型xmlDocPtr。xmlDoc是个struct,保存了一一三个 xml的相关信息,相似 文件名、文件类型、子节点等等;xmlDocPtr等于xmlDoc*。

  xmlFreeNodeList来释放动态分配的节点内存,除非你把该节点从文件中移除了。

2、libxml2的安装

(1)创建xml文件

     xmlSaveFormatFileEnc可将文件以一种编码/格式存入一一三个 文件中。

具体安装步骤:

1
、解压:$tar zxvf  libxml2-2.9.1.tar.gz

2、进入解压后的安装目录:$cd  libxml2-2.9.13、安装三部曲:

  xmlNewDoc函数创建一一三个 新的文件指针。

  xmlParseFile函数以默认妙招读入一一三个 UTF-8格式的文件,并返回文件指针。

  节点应该是xml中最重要的元素了,xmlNode代表了xml文件中的一一三个 节点,实现为一一三个 struct,内容非常丰厚:tree.h

     xmlNewNode函数创建一一三个 节点指针root_node

xml形态图如下所示:

  xml广泛应用于网络数据交换,配置文件、Web服务等等。近段时间项目中做一点配置文件,曾经是用ini,现在改用xml。xml相对来说可视性更为直观,很容易看出数据之间的层次关系。关于xml的全部介绍可不还要参考http://baike.baidu.com/view/159832.htm?fromId=63。本文重点介绍解析xml的libxml2库的安装及使用,举例说明创建和解析xml的过程。

     xmlSaveFile将文件以默认妙招存入一一三个 文件。

  内内外部字符类型:xmlChar,定义为:typedef unsigned char xmlChar,用无符号型的char方便表示utf-8编码。libxml2提供了一一三个 宏进行转换,#define BAD_CAST (xmlChar *)。

  xmlFreeDoc释放文件指针。一阵一阵注意,当你调用xmlFreeDoc时,该文件所有蕴藏的节点内存都被释放。 

测试进程运行如下所示:

关于libxml2的提供的接口,可不还要参考http://blog.csdn.net/shanzhizi/article/details/7726679。libxml2常用的接口如下:

  关于libxml2的介绍请参考官方网址http://xmlsoft.org/,下载最新的libxml2库http://xmlsoft.org/downloads.html。

  节点类型xmlNode、指针xmlNodePtr

3、xml文档形态