zl程序教程

您现在的位置是:首页 >  后端

当前栏目

如何用C语言生成简单格式的xml

C语言XML 如何 简单 生成 格式
2023-06-13 09:15:00 时间
代码很简单,直接贴了。
复制代码代码如下:

   #include<stdio.h> 

   staticFILE*out=NULL; 
   staticinttabs=0; 

   voidset_out_fp(FILE*fp) 
   { 
       out=fp; 
   } 

   voidput(char*str) 
   { 
       fprintf(out,"%s",str); 
   } 

   voidput_head(char*head) 
   { 
       put("<?"); 
       put(head); 
       put("?>\n"); 
   } 

   voidout_tabs() 
   { 
       inti; 
       for(i=0;i<tabs;i++) 
       { 
           put("\t"); 
       } 
   } 

   voidtag_start(char*tag) 
   { 
       out_tabs(); 
       put("<"); 
       put(tag); 
       put(">\n"); 
       tabs=tabs+1; 
   } 

   voidtag_end(char*tag) 
   { 
       tabs=tabs-1; 
       out_tabs(); 
       put("</"); 
       put(tag); 
       put(">\n"); 
   } 

   voidtag_value(char*tag,char*value) 
   { 
       out_tabs(); 
       put("<"); 
       put(tag); 
       put("\t"); 
       put("\"value\"=\""); 
       put(value); 
       put("\""); 
       put("\t/>\n"); 
   } 

   voidtag_value_num(char*tag,longvalue) 
   { 
       out_tabs(); 
       put("<"); 
       put(tag); 
       put("\t"); 
       put("\"value\"="); 
       fprintf(out,"%d",value); 
       put("\t/>\n"); 
   } 

   intmain() 
   {    
       FILE*fp=fdopen(1,"a"); 
       set_out_fp(fp); 

       put_head("xmlversion="1.0"encoding=\"GBK\""); 
       tag_start("投递信息"); 
       tag_start("硬件"); 

       tag_value_num("网卡",1); 

       tag_end("硬件"); 
       tag_end("投递信息"); 

       fclose(fp); 

       return0; 
   }