国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C語言實現xml構造解析器

2020-01-26 14:32:00
字體:
來源:轉載
供稿:網友

純C實現xml構造解析器,所有實現只有一個.c一個.h文件組成,簡單易用,易于擴展。

#include <string.h>#include <stdio.h>#include <stdlib.h>#include "sxml.h"  #define LUA_SCRIPT "function fun()/n/  int a;/n/  a = 10;/n/  return a;/n/end"  int main(){  sxml_file_info_t* info;  char* tmp;  const char* pstr;  int line=1;  char buff[128]={0};  sxml_doc_t* parser=NULL;  sxml_doc_t* doc = sxml_doc_new("a.xml","1.0","GB2312");  sxml_node_t* node = sxml_node_new("root");  sxml_attr_t* attr = sxml_attr_new("age","25");     sxml_node_t* subnode = sxml_node_new("score");  sxml_node_t* rawdata = sxml_rawdata_new(NULL,"hello world!",strlen("hello world!"));   sxml_node_t* rawdata2 = sxml_rawdata_new(NULL,"hello world!",strlen("hello world!"));   sxml_node_t* rawdata3 = sxml_rawdata_new(NULL,"hello world!",strlen("hello world!"));   sxml_node_t* rawdata4 = sxml_rawdata_new("raw","rawdata",strlen("rawdata"));   sxml_node_t* rawdata5 = sxml_rawdata_new("lua",LUA_SCRIPT,strlen(LUA_SCRIPT));   sxml_node_t* innertext = sxml_innertext_new("內部字符串");  sxml_node_t* comment = sxml_comment_new("注釋");  sxml_node_t* empty = sxml_empty_new("empty");     sxml_add_attr2node(node,attr);  attr = sxml_attr_new("sex","man");  sxml_add_attr2node(node,attr);   attr = sxml_attr_new("語文","95");  sxml_add_attr2node(subnode,attr);  attr = sxml_attr_new("數學","100");    sxml_add_attr2node(subnode,attr);  attr = sxml_attr_new("英語","98");    sxml_add_attr2node(subnode,attr);     sxml_add_subnode2node(node,subnode);  sxml_add_subnode2node(node,rawdata);  sxml_add_subnode2node(node,rawdata2);  sxml_add_subnode2node(node,rawdata3);  sxml_add_subnode2node(node,rawdata4);  sxml_add_subnode2node(node,rawdata5);  sxml_add_subnode2node(node,innertext);  sxml_add_subnode2node(node,comment);  sxml_add_subnode2node(node,empty);      sxml_add_node2doc(doc,node);     //printf("%s/n",sxml_doc_print_buffered(doc,16));  tmp = sxml_doc_print(doc);  pstr = tmp;  printf("%s/n", tmp);  while((pstr = skip_line(pstr)))line++;  printf("/n/n%d/n/n", line);  //printf("/n/n%s/n/n",check_skip("<?xml version=/"1.0/" encoding=/"GB2312/"?>","<?xml version=///"")?"YES":"NO");  //copy_until(buff,"<?xml version=/"1.0/" encoding=/"GB2312/"?>","/" ");  //printf("/n/n%s/n/n",buff);     //sxml_save(doc);      sxml_doc_free(doc);  doc = NULL;  free(tmp);     //printf("aaaa.................../n");     //getchar();     parser = sxml_parse("a.xml");     //tmp = sxml_doc_print(parser);//有問題,內存越界  tmp = sxml_doc_print_buffered(parser,16);  printf("%s/n", tmp);  free(tmp);  sxml_save2file(parser,"b.xml");  sxml_doc_free(parser);     return 0;}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 韶关市| 瑞丽市| 荣成市| 武川县| 同心县| 武安市| 凉山| 广西| 佛教| 都匀市| 四子王旗| 禹州市| 仲巴县| 上林县| 乳山市| 东阳市| 厦门市| 东乡县| 新化县| 黄冈市| 英山县| 江华| 太仆寺旗| 长寿区| 博客| 娱乐| 双城市| 武隆县| 大城县| 都匀市| 黔东| 南皮县| 丹东市| 安丘市| 绵阳市| 沙洋县| 涿鹿县| 沾化县| 海南省| 安岳县| 孙吴县|