libxml2部分API
来源:互联网 发布:结婚照制作软件 编辑:程序博客网 时间:2024/05/28 16:14
libxml2相对功能比较全,SAX、DOM解析方式都有实现,而且还有XPath、XLink等实现,甚至连HTMLparser都有了,下面是部分API:
1、解析XML文档DOM树(参考parser.h)
xmlDocPtr doc = xmlParseDoc((const xmlChar *)xml_data);
xmlNodePtr node = xmlDocGetRootElement(doc);
然后node就可以在DOM树里面漫游了,当然xmlParseDoc之后理所当然应该检查doc是否为空意即解析是否成功,结束之后记得 xmlFreeDoc(doc);如果需要解析xml文件,则使用xmlParseFile(const xmlChar *)"test.xml")。
2、常见操作(参考tree.h)
得到一个节点的名称:node->name^_^
得到一个节点的内容:xmlChar *value = xmlNodeGetContent(node)返回值value应该使用xmlFree(value)释放内存
设置一个节点的内容:xmlNodeSetContent(node, (const xmlChar *)"test")
得到一个节点的某属性值:xmlChar *value = xmlGetProp(node, (const xmlChar *)"prop1"),返回值需要xmlFree(value)释放内存
设置一个节点的某属性值:xmlSetProp(node, (const xmlChar *)"prop1", (const xmlChar *)"v1")
3、新建XML文档(参考tree.h)
xmlDocPtr doc = xmlNewDoc("1.0"),其中1.0是版本号
doc->children = xmlNewDocNode(doc, NULL, (const xmlChar *)"stream", NULL)创建根节点,具体函数原型可参考其API-Manual
xmlNodePtr node = xmlNewChild(doc->children, NULL, (const xmlChar *)"dsrc_frame", NULL),用xmlNewChild可生成某节点的子节点
xmlDocDumpFormatMemory(doc, buf, &result, 1),用来保存生成的xml文档到内存中,此系列函数还包括:xmlDocDump、xmlDocDumpFormatMemoryEnc、 xmlDocDumpMemory、xmlDocDumpMemoryEnc、xmlDocFormatDump
1、解析XML文档DOM树(参考parser.h)
xmlDocPtr doc = xmlParseDoc((const xmlChar *)xml_data);
xmlNodePtr node = xmlDocGetRootElement(doc);
然后node就可以在DOM树里面漫游了,当然xmlParseDoc之后理所当然应该检查doc是否为空意即解析是否成功,结束之后记得 xmlFreeDoc(doc);如果需要解析xml文件,则使用xmlParseFile(const xmlChar *)"test.xml")。
2、常见操作(参考tree.h)
得到一个节点的名称:node->name^_^
得到一个节点的内容:xmlChar *value = xmlNodeGetContent(node)返回值value应该使用xmlFree(value)释放内存
设置一个节点的内容:xmlNodeSetContent(node, (const xmlChar *)"test")
得到一个节点的某属性值:xmlChar *value = xmlGetProp(node, (const xmlChar *)"prop1"),返回值需要xmlFree(value)释放内存
设置一个节点的某属性值:xmlSetProp(node, (const xmlChar *)"prop1", (const xmlChar *)"v1")
3、新建XML文档(参考tree.h)
xmlDocPtr doc = xmlNewDoc("1.0"),其中1.0是版本号
doc->children = xmlNewDocNode(doc, NULL, (const xmlChar *)"stream", NULL)创建根节点,具体函数原型可参考其API-Manual
xmlNodePtr node = xmlNewChild(doc->children, NULL, (const xmlChar *)"dsrc_frame", NULL),用xmlNewChild可生成某节点的子节点
xmlDocDumpFormatMemory(doc, buf, &result, 1),用来保存生成的xml文档到内存中,此系列函数还包括:xmlDocDump、xmlDocDumpFormatMemoryEnc、 xmlDocDumpMemory、xmlDocDumpMemoryEnc、xmlDocFormatDump
- libxml2部分API
- c libxml2库部分API
- libxml2 常用的API
- libxml2编译及API,XPath操作总结
- libxml2
- libxml2
- libxml2
- libxml2
- libxml2
- libxml2
- libxml2
- Libxml2
- libxml2
- libxml2
- API(部分)
- JFreeChart API一览 (部分)
- sevlet API部分说明
- JAVA API部分笔记
- hdu 2639 Bone Collector II (01背包,第k优解问题)
- MultiByteToWideChar和WideCharToMultiByte用法详解
- jsp验证码
- STM32存储器分配
- 搭建android开发环境
- libxml2部分API
- Cannot find the declaration of element 'beans'
- 课本上的数据库知识
- 【rmzt】月下&&萌妹win7主题_7.31
- 下半年经济工作定调:稳增长调结构促改革
- POJ 1789 Truck History【最小生成树简单应用】
- matlab 小函数
- C++虚函数表调用学习
- (jsp 和 servlet功能篇) jsp+servlet+javaBean 实现分页代码(mysql 数据库)