xml文件的创建

#include <stdio.h>
#include <libxml/parser.h>
#include <libxml/xpath.h>
#include <libxml/tree.h>

int main()
{
   //定义文档和节点指针
   xmlDocPtr doc = xmlNewDoc(BAD_CAST  "1.0");
   xmlNodePtr root_node = xmlNewNode(NULL,  BAD_CAST  "root");

   //设置根节点
   xmlDocSetRootElement(doc,  root_node);

   //在根节点中直接创建节点
   xmlNewTextChild(root_node, NULL,  BAD_CAST  "newNode1",  BAD_CAST  "newNode1 content");
   xmlNewTextChild(root_node, NULL,  BAD_CAST  "newNode2",  BAD_CAST  "newNode2 content");
   xmlNewTextChild(root_node, NULL,  BAD_CAST  "newNode3",  BAD_CAST  "newNode3 content");

   //创建一个节点,设置其内容和属性,然后加入根结点
   xmlNodePtr node = xmlNewNode(NULL,  BAD_CAST  "node2");
   xmlNodePtr content = xmlNewText(BAD_CAST  "NODE CONTENT");

  //将节点添加到根节点
   xmlAddChild(root_node,  node);
   xmlAddChild(node,  content);
   xmlNewProp(node,  BAD_CAST  "attribute",  BAD_CAST  "yes");

   //创建一个儿子和孙子节点
   node = xmlNewNode(NULL,  BAD_CAST  "son");
   xmlAddChild(root_node,  node);
   xmlNodePtr grandson = xmlNewNode(NULL, BAD_CAST  "grandson");
   xmlAddChild(node,  grandson);
   xmlAddChild(grandson, xmlNewText(BAD_CAST  "This is a grandson node"));

   //存储xml文档
   int nRel = xmlSaveFile("Create.xml",  doc);
   if (nRel != -1) {

    printf("一个xml文档被创建,写入%d个字节。\n",  nRel);
   }

   //释放文档内节点动态申请的内存
   xmlFreeDoc(doc);

   return  0;
}

转载于:https://www.cnblogs.com/joeyupdo/archive/2012/08/03/2621124.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值