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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • matlab画三维图形_matlab的三维函数

    matlab画三维图形_matlab的三维函数对散点图拟合三维网格图形:num=xlsread(‘data_2011a.xls’,’B4:E322′)//读取出该区域的数据作为表格A=num(:,1)//从B矩阵取出第一列的所有行B=num(:,2)C=num(:,3)xx=linspace(min(A),max(A),50);//产生min(A)到max(A)均摊的50个点,目的上拟合离散点数量上的不足yy=linsp…

    2022年10月11日
    0
  • spring boot 过滤器_拦截器和过滤器的区别面试

    spring boot 过滤器_拦截器和过滤器的区别面试原文地址:https://www.tsanyang.top/share-detail/739784336139616256.html最近实现一个权限控制功能,想通过拦截器进行实现,当业务一切按预期一样完成,有一个特别控制需要再拦截器对参数进行解析使用,但是发现当我们再拦截器读取了输入流,再控制器是无法获取到参数的,这个是由于输入流只能被读取一次,然后通过问题搜索了一把,看见网上通过重写HttpServletRequestWrapper实现输入流读取后,再写入回去,这样解决控制器无法获取参数问题,故在此做记

    2022年8月23日
    6
  • clion永久激活码[免费获取]

    (clion永久激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/ide…

    2022年3月22日
    405
  • 从入门到精通,Java学习路线导航(附学习资源)

    引言最近也有很多人来向我”请教”,他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧。Java学习路线当然,这里我只是说Java学习路线,因为自己就是学Java的,对Java理当很熟悉,对于其它方面,我也不是很了解。基础阶段首先是基础阶段,在基础阶段,我们必须掌握Java基础,Mysql数据库,Ora…

    2022年4月12日
    45
  • 零基础快速打造一个属于自己的微信聊天工具

    零基础快速打造一个属于自己的微信聊天工具

    2021年9月18日
    49
  • 2021年中国智能制造行业产业链研究报告_十四五规划 制造业

    2021年中国智能制造行业产业链研究报告_十四五规划 制造业下载报告去公众号:硬核刘大后台回复“智能工厂”,即可下载完整PDF文件。更多报告内容,可加微信:yw5201a1领取。(ps:加过微信:chanpin628的不要再加,分享的内容一样,有一个号就行。)申明:报告版权中商产业研究院独家所有,此处仅限分享学习使用,如有侵权,请联系小编做删除处理。…

    2022年9月11日
    1

发表回复

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

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