免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: ddqq007

LINUX 下C/C++使用XML存取数据 [复制链接]

论坛徽章:
0
发表于 2011-11-30 10:46 |显示全部楼层
你要把你的限制条件说出来,

能存储数据的文件都是数据库
xml是穷人的数据库啊,是带格式的文本文件,文 ...
三月廿七 发表于 2011-11-29 22:44


文本文件也行,不能用数据库存数据,有需求是:传给他们的数据要保存在xml文件中,所以我想,是否直接用xml做数据库方便一点呢?

论坛徽章:
0
发表于 2011-11-30 17:06 |显示全部楼层
回复 20# evaspring


    RapidXml 有类似xpath的API吗

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
发表于 2011-11-30 17:33 |显示全部楼层
唉,这位仁兄, 我也不想用,用户不让装数据库,只能文件读写,除了XML,还有什么能作为数据库的文件 ...
ddqq007 发表于 2011-11-29 12:32



    memcached 行吗?

论坛徽章:
0
发表于 2011-11-30 18:58 |显示全部楼层
Boost自带那个xml解析器还不错,起码跨平台性比libxml2好一点

libxml2在windows下你用了,别人接手会很郁闷

论坛徽章:
0
发表于 2011-12-01 12:54 |显示全部楼层
推荐expat吧, 源码文件少只有大概2个.c, 移植性好, apache httpd源码里就包含了这个工程. 处理上层应用数据时基于start, end, check等回调的方式, 目前适合我的项目.

论坛徽章:
0
发表于 2011-12-04 21:34 |显示全部楼层
别用xml,在任何场合下,除非老板强迫你用
bruceteen 发表于 2011-11-29 12:24



    难道这位老兄不知道XML已经是目前通讯接口报文的主流了吗?这个绝对不是“老板强迫”的问题!

论坛徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16赛季CBA联赛之青岛
日期:2016-07-05 12:36:0515-16赛季CBA联赛之广东
日期:2016-06-29 11:45:542015亚冠之全北现代
日期:2015-07-22 08:09:472015年辞旧岁徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39狮子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技术图书徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
发表于 2011-12-05 00:30 |显示全部楼层
难道这位老兄不知道XML已经是目前通讯接口报文的主流了吗?这个绝对不是“老板强迫”的问题!
sunlan 发表于 2011-12-04 21:34


    哈哈,俺一直孤陋寡闻,不是一次两次了,当年好多“仁兄”跟我说“难道这位老兄不知道VB已经是唯一的编程语言,C/C++已经完蛋了吗?”,我也一样不知,都没感觉出来过。
挺xml的人很多,倒xml的也很多(当然,这一点你不会承认),当然只要说得出理由都是有理的,我不反对你挺它。但在我心中,XML既无法给“人”看懂,又难于被“程序”处理,即使是google改良过的二进制xml,我认为也出息不大,一个接口,要么站在“人”这边,要么站在“程序”那边,中间的里外不是人。

论坛徽章:
0
发表于 2011-12-05 01:28 |显示全部楼层
回复 20# evaspring


    xml主要是语义是显示的,libxml2的测评已经很不错了,而且有良好的测试(1800+的用例),用着放心。

如果是配置文件,ini还是比较好。

论坛徽章:
0
发表于 2011-12-05 01:29 |显示全部楼层
回复 24# reiase


    呵呵,windows下开源库用起来都麻烦。libtidy在win下倒是一个不错的选择

论坛徽章:
0
发表于 2011-12-05 01:33 |显示全部楼层
回复 22# ddqq007


    兄弟,别纠结了,看你的平台,如果是win下,那就用win自己提供的xml解析,比如MXML什么的。

如果是*nix,强烈建议libxml2,抛开你所谓的性能不看,人家是经过了良好测试的,即便考虑性能,libxml2的性能你都还没用,用了再来说吧。

另外,如果你是c++,很介意保持“纯”,那用那个什么x***什么的也不错,当然boost自己的你也可以用。

还有,如果你不是对xml依赖很大,我是说你只不过是想提取一些xml中的数据而已,那直接上正则也是一个不错的选择,而且更简洁方便,编译一个静态的正则,效率绝对不是开玩笑的。


以上是我的建议,供参考。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP