文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>minixml 使用记录

minixml 使用记录

时间:2010-07-29  来源:79hy

minixml 使用记录

解压mxml-2.6.tar.gz编译,然后得到libmxml.a mxml.h
结构如下:
a  a.c  a.o  libmxml.a  makefile  mxml-2.6  mxml-2.6.tar.gz  mxml.h  mymemory.log  test.xml

a.c 源码

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <mcheck.h>
#include "mxml.h"

void find_node()
{
        FILE *fp;
        mxml_node_t *tree = NULL;

        fp = fopen("test.xml", "r");
        tree = mxmlLoadFile(NULL, fp, NULL);
        fclose(fp);

        mxml_node_t *node;
        const char *name, *prog;

        /* 使用中文 */
        for (node = mxmlFindElement(tree, tree, "node", NULL, NULL, MXML_DESCEND);
                        node != NULL;
                        node = mxmlFindElement(node, tree, "node", NULL, NULL, MXML_DESCEND))
        {
                name = mxmlElementGetAttr(node, "name");
                prog = mxmlElementGetAttr(node, "prog");

                //printf("name=%s, prog=%s \n", name, prog);

        }

        mxmlDelete(tree);
}

int main()
{


        int i=10000;

        //setenv("MALLOC_TRACE", "mymemory.log", 1);

        //mtrace();


        while(i--)
                find_node();
        //muntrace();


        return 0;
}


makefile

CC=gcc
CFLAGS=-g -Wall

LIBS=a.o libmxml.a -lpthread

all: a

a: $(LIBS)
        $(CC) -o $@ $(LIBS)

clean:
        rm -f *.o a


test.xml

<?xml version="1.0"?>
<data>
        <node name="a1" prog="1.sh"></node>
        <node name="a2" prog="2.sh"></node>
        <node name="a3" prog="3.sh"></node>
        <node name="a4" prog="4.sh"></node>
        <node name="a5" prog="5.sh"></node>
        <node name="a6" prog="6.sh"></node>
        <node name="a7" prog="7.sh"></node>
        <node name="a8" prog="8.sh"></node>
</data>


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载