c语言 自己编程解析 xml,C语言解析.XML文件

c语言 自己编程解析 xml,C语言解析.XML文件最近手头上有个活在忙,中间很重要的一部分就是用C语言将.XML文件中想要的key和value读出来,与之前已有的值进行比较。核心的.XML文件的格式如下:zzzxxxyyy而我的思路是这样的:1.将整个文件读到一个buf中;2.去掉不需要的头部分;(xml?>)3.采用下降递归的方法,获取到每一个人tag和content;其中用到的结构体有:typedefstructXM…

大家好,又见面了,我是你们的朋友全栈君。

最近手头上有个活在忙,中间很重要的一部分就是用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://javaforall.net/157880.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux查看端口占用情况的几种方式「建议收藏」

    Linux查看端口占用情况的几种方式「建议收藏」概述测试环境为Centos7.9,本文简单给出了几种检测端口的例子。一、查看本机端口占用1、netstat#安装netstatyum-yinstallnet-tools#检测端口占用netstat-npl|grep”端口”2、lsof#安装lsofyum-yinstalllsof#检测端口占用lsof-i:端口号二、查看对方端口是否开放1、nc(netcat)#安装ncyum-yinstallnc#查看对方端口是否开放nc-vz对

    2022年7月27日
    7
  • JS 幻灯片代码(含自动播放)

    JS 幻灯片代码(含自动播放)前端

    2022年7月13日
    18
  • Js保留两位小数_如何保留两位小数

    Js保留两位小数_如何保留两位小数一、“四舍五入”算法  1.四舍五入的情况varnum=4.2167456;num=num.toFixed(2);//输出结果为4.22varnum=4.2167456;num=Math.round(num*100)/100;//输出结果为4.22varnum=4.2007456;num=Math.round(num*…

    2022年8月10日
    5
  • lamp配置域名

    lamp配置域名windows访问的时候,记得把本机的windows/system32/drivers/etc/hosts文件中填上相应的配置(相当于dns)配置虚拟主机1)配置host文件/etc/hosts打开C:/windows/system32/drivers/etc/hosts文件增加域名记录如:192.168.9.38www.ec1.com192.168.9.38

    2022年6月6日
    26
  • 中国知网爬虫

    中国知网爬虫中国知网爬虫一、知网介绍提起中国知网,如果你曾经写过论文,那么基本上都会与中国知网打交道,因为写一篇论文必然面临着各种查重,当然翟博士除外。但是,本次重点不在于写论文跟查重上,而在于我们要爬取知网上一些论文的数据,什么样的数据呢?我们举一个例子来说,在知网上,搜索论文的方式有很多种,但是对于专业人士来说,一般都会使用高级检索,因为直接去查找作者的话,容易查找到很多重名作者,所以我们本次的爬…

    2022年7月26日
    13
  • 如何解决wamp中apache外部IP访问问题

    如何解决wamp中apache外部IP访问问题

    2021年9月23日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号