转载分享,觉得不错
哈哈哈哈,标题取得有点霸气,其实也不是什么开源,只是移植了开源的MINIXML而已,MINIXML是全部源代码开源的XML解析库,很小,代码也比较清晰简单,整个代码围绕tree,也就是XML的元素节点组成的树展开,解析XML出来的XML所有元素都会变成一个树形结构,文件大小不受限制,但是限制于你MCU的内存,文件越大,耗内存就越严重!我觉得这个开源库有个不好的地方,就是没有提供内存管理,用的是C标准库里的malloc,不过不怪他,他本来就不是为了嵌入式而写的代码 ,不过后期我们可以自己加入自己的内存管理替换他的。
XML支持3种加载XML文件的方式,这次我使用的是字符串加载方式,也就是吧XML文件全部从SD卡或者USB中读回来到一个BUFFER中,然后加载到MINIXML进行解析,它还支持文件句柄加载和文件流方式加载,这两种方式优点就是剩内存~ ,所以后期我在改进一下,这次暂时用字符串加载方式
XML支持解析和创建XML文件,这次暂时试一下解析吧~创建大家自己搞吧,其实也很简单~
移植也很简单,请看代码,我提供了一个TEST.XML测试文件,里面有一个元素节点是FIXTURE,节点有三个属性,company,shortname,name,属性值分别为guangzou,myqiang,myqiang1990,其实大家可以解析任意复杂的XML文件,但是要注意内存 ,在解析大文件的时候一定要注意HEAP的大小!!!好了废话不多说,上传源码,图片,和文档,我移植的是最新的MINIXML2.10版本
官网:https://michaelrsweet.github.io/
图片:


回复于 2018-12-26
6#
-
- mcuzzg@163.com
-
0 发帖1 回复102 积分
- 私信他 +关注
-
- 普通用户_11c6f0d82cac4f8
-
0 发帖1 回复102 积分
- 私信他 +关注
块
导
航
举报
请选择举报类别
- 广告垃圾
- 违规内容
- 恶意灌水
- 重复发帖