minixml开源包的使用
来源:互联网 发布:tk域名 编辑:程序博客网 时间:2024/05/16 10:13
XML在现在的发展中越显得越重要,目前发现应用在动态页面配置、数据包传输等用处还是相当有作用的。自己编写XML解析器比较耗时,还好现在已经有了做的相当完善的minixml,可以拿过来用了。
google上搜索minixml,目前能够下载到的最新版本是2.7
下载完成以后,解压、安装minixml,操作命令如下
tar -zxf mxml-2.7.tar.gz
解压完成后,进入解压出来的文件夹mxml-2.7根据里面的README进行配置,步骤简单的如下所示,默认安装路径是在/usr/local目录下面
./configure
make
make install
执行完成以后,可以发现/usr/local/lib目录下面多了mxml的静态和动态的库文件了,如下所示
根据手册,编写测试文档,功能是创建一个xml文档,代码如下
#include <stdio.h>#include <mxml.h>int main(int argc, char *argv[]){FILE *fp;mxml_node_t *xml; /* <?xml ... ?> */ mxml_node_t *data; /* <data> */ mxml_node_t *node; /* <node> */ mxml_node_t *group; /* <group> */fp = fopen("new.xml", "w"); xml = mxmlNewXML("1.0"); data = mxmlNewElement(xml, "data"); node = mxmlNewElement(data, "node"); mxmlNewText(node, 0, "val1"); node = mxmlNewElement(data, "node"); mxmlNewText(node, 0, "val2"); node = mxmlNewElement(data, "node"); mxmlNewText(node, 0, "val3"); group = mxmlNewElement(data, "group"); node = mxmlNewElement(group, "node"); mxmlNewText(node, 0, "val4 y"); node = mxmlNewElement(group, "node"); mxmlNewText(node, 0, "val5 n"); node = mxmlNewElement(group, "node"); mxmlNewText(node, 0, "val6 c"); node = mxmlNewElement(data, "node"); mxmlNewText(node, 0, "val7"); node = mxmlNewElement(data, "node"); mxmlNewText(node, 0, "val8");mxmlSetWrapMargin(10);mxmlSaveFile(xml, fp, MXML_NO_CALLBACK); fclose(fp);}
编译代码,然后执行,发现用Notepad打开生成的XML文旦,全部都在一行记录里面,但是用网页打开则能够正常显示,如下所示
编译过程的错误:
此错误添加上线程库(lpthread)既可以解决
运行过程的错误
错误原因:运行NewXML时候没有找到libmxml.so.1动态库
解决办法:
方法1:将libmxml.so.1拷贝到/lib目录下面即可
方法2:首先、需要清楚的是我们把库文件放在系统默认的动态库目录下面/usr/local/lib目录下面,但是运行时却没有找到?此时需要更新动态库,使用如下命令
sudo ldconfig -v
推荐使用:方法2
- minixml开源包的使用
- MINIXML使用
- MiniXML使用 -- 换行带来的空结点
- MiniXml
- 一个轻量的xml库 minixml
- 轻量级C语言实现的minixml解析库入门教程
- 轻量级C语言实现的xml解析库minixml
- 基于MiniGUI和Minixml的多语言版UI开发
- C++miniXML解析网址
- simple note of minixml
- minixml解析器移植
- minixml 移植开发
- MiniXml中文手册
- minixml创建与解析XML
- minixml空格无法解析问题
- Minixml 不能解析包含空格字符串
- Minixml C语言轻量型xml解析库 打包成so库发布到安卓平台 (一)
- GUID使用的使用
- Android中的Audio Stream
- shell数组详解
- opencv cvcanny报错 OpenCV Error: Bad number of channels (打开第8张图片时出错)
- JS操作JSON总结
- 当汇错款时该怎么做
- minixml开源包的使用
- redis配置文件相关
- 第二次心动的女孩
- Install Ruby and gem
- 免费随身wifi无需360
- VC编译选项 Release MiniSize、Release MinDependecy的区别
- 使用 CXF 做 webservice 简单例子
- 解决Xcode "The selected destination does not support the architecture " 错误错误
- opencv 形状分析