最近手头上有个活在忙,中间很重要的一部分就是用C语言将.XML文件中想要的key和value读出来,与之前已有的值进行比较。
核心的.XML文件的格式如下:
zzz
xxx
yyy
而我的思路是这样的:
1.将整个文件读到一个buf中;
2.去掉不需要的头部分;( xml ?>)
3.采用下降递归的方法,获取到每一个人tag 和 content;
其中用到的结构体有:
typedef struct XML_SEGMENT{
char *str;
int len;
}XML_SEGMENT;
typedef enum{
XML_ELEMENT_CONTENT=1,XML_TEXT_CONTENT,XML_DECLARE_CONTENT
}xml_content_t;
typedef struct{
XML_ATTR_PAIR *array;
int cnt;
}XML_ATTRIBUTE;
typedef struct XML_LIST{
XML_SEGMENT tagname;
XML_ATTRIBUTE attr;
XML_SEGMENT content;
xml_content_t type;
XML_SEGMENT realm;
int depth;
struct XML_LIST *parent;
struct XML_LIST *first_child;
struct XML_LIST *prev_sibling;
struct XML_LIST *next_sibling;
}XML_LIST;
总结
以上是编程之家为你收集整理的C语言解析.XML文件全部内容,希望文章能够帮你解决C语言解析.XML文件所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/124526.html