mini xml解析流程
来源:互联网 发布:曼威网络 编辑:程序博客网 时间:2024/05/17 21:59
onvif使用的是mini xml解析xml,公司内部没有人懂这一块,刚好让我看看源码。
mini xml是一个开源的项目,但是基本上能看到的都是如何使用的教程,内部使用流程没有在网上搜索到,所以刚好整理了一部分放到博客供大家参考。
1. mini xml介绍
Mini-XML是一个小型的开源的XML解析器,采用 C 语言开发。该解析器最大的特点就是小型、无须依赖其他类库,只需要 GCC 编译器 和 make 程序即可编译,支持 UTF-8/UTF-16 编码。
Mini-XML支持读取UTF-8和UTF-16和UTF-8编码的XML文件和字符串写。数据存储在链表树结构,保留XML数据的层次结构,并且没有预设的限制,可用内存维护任意元素名称,属性和属性值
2. 数据结构
node的6个类型:Element\integer\opaque\real\text\custom
element则保存”<” ” >”里面的内容。
其余类型则保存”<>” “</>”之间的内容。
其中text类型和opaque类型都是保存字符串,但text不包含空格,而opaque则将空格包含在内;
real类型是保存double类型的数据。
3. 数据存储
有个xml文件内容如下:
<? ?>
<noteyear="55" date="33" month="22">
<id>5000</id>
<password>FE-D0-18-00</password>
</note>
下图是显示了如何保存xml文件:
4. 关于xml的head
xml的head一般如下:
<?xml version="1.0"encoding="utf-8"?>,其中 “<? ?>”为xml head的标志。
在mini xml解析到”<? ?>”之后,会将它设置为rootelement,并设置它的所有子孙节点的类型。
如果xml没有”<? ?>”标志,则不会设置它的所有子孙节点的类型,导致解析错误。
5. 待续。
- mini xml解析流程
- libmxml (Mini-XML) 函数解析
- C++ XML解析 使用Mini-XML
- python3 xml.dom.mini模块解析xml
- mini.iso制作流程
- 轻量级开源的ANSI C下XML解析库—Mini-XML
- mini-XML 中文文档
- Mini-XML学习
- mini-XML 中文文档
- mini-XML 中文文档
- Mini-XML的使用手册
- Mini-XML学习笔记
- mini-xml换行
- mini-XML 中文文档
- mini-XML 中文文档
- mini-XML 中文文档
- Silverlight中XmlReader解析XML的流程
- java解析xml的具体流程
- Second Day
- Android基础篇之Service(二) - Service声明周期周期
- IP协议解读(二)
- 28-反射机制-04-反射机制(获取Class中的构造函数)
- android WebView总结
- mini xml解析流程
- NOIP2014提高组 寻找道路
- java模拟js的escape和unescape函数
- 好好玩的贪心
- [IOS开发]搜索用谓词NSPredicate
- SqlBulkCopy 高效、大数据量复制数据
- flask tutorial debug '_AppCtxGlobals' object has no attribute 'db'
- Lufylenged引擎学习——LTextField
- 28-反射机制-05-反射机制(获取Class中的字段)