zoukankan      html  css  js  c++  java
  • xml 以键值对形式存储

    1.XM 文件:

    <?xmlversion="1.0"encoding="utf-8"?>

    <Root>

      <Templete alias="">

        <TempleteName>atest20120806test</TempleteName>    

       <Templetevalue>cb1,cb7,cb9,cb5,cb2,SRRcb7,PVRcb2,PVRcb6,PVRcb10</Templetevalue>

     </Templete>

    <Templete alias="">

        <TempleteName>templateaaaa</TempleteName>

       <Templetevalue>cb1,cb7</Templetevalue>

    </Root>

    2.存储便利xml:

    public staticbool CreateXML(string TempleteName, string TempleteValue, string UserName, string xpath)

            {

    try

                {

                   XmlDocument xmlDoc = newXmlDocument();

                    xmlDoc.Load(xpath);

                   XmlNode root = xmlDoc.SelectSingleNode("Root");//查找

                   if (root == null)

                       returnfalse;

                   bool isExistsNode = false;

                   //遍历xpath节点下的所有子节点

                   foreach (XmlNode node in root.ChildNodes)

                    {

                       string curTempleteName = node.ChildNodes[0].InnerText;

                       string curTempleteValue = node.ChildNodes[1].InnerText;

                       if (curTempleteName == TempleteName)

                        {

                           //存在此节点则更新

                            node.ChildNodes[1].InnerText = TempleteValue;

                           XmlNode nodes = node.ChildNodes[1].ParentNode;//找到此节点的父节点

                           XmlElement partentXE = (XmlElement)nodes;//将父节点类型转换为XmlElement

                            partentXE.SetAttribute("alias", UserName);

                            isExistsNode =true;

                           break;

                        }

                    }

                   if (!isExistsNode)//不存在重复,创建

                    {

                        XmlElement xe1 = xmlDoc.CreateElement("Templete");//创建一个节点

                        xe1.SetAttribute("alias", UserName);

                       XmlElement xe2 = xmlDoc.CreateElement("TempleteName");

                        xe2.InnerText = TempleteName;//设置文本节点

                        xe1.AppendChild(xe2);//添加到节点中

                       XmlElement xe3 = xmlDoc.CreateElement("Templetevalue");

                        xe3.InnerText = TempleteValue;//设置文本节点

                        xe1.AppendChild(xe3);//添加到节点中

                        root.AppendChild(xe1);//添加到节点中

                    }

                    xmlDoc.Save(xpath);

                   return true;

                }

               catch (Exception ex)

                {

                   return false;

                }

            }

  • 相关阅读:
    JAVA 不同类载入器命名空间的理解
    着手微信企业号的一些尝试
    redis之字符串命令源代码解析(二)
    设计模式学习04—建造者模式
    联合体union用在何处?
    10款jQuery/CSS3动画应用 超有用
    JavaWeb学习笔记:Tomcat
    Directx9.0 学习教程3 -图形学之创建点 线 三角形 等
    hdu 1158 Employment Planning (dp)
    (九十二)加速计的使用方法(过期方法+新方法)
  • 原文地址:https://www.cnblogs.com/yonguibe/p/2674984.html
Copyright © 2011-2022 走看看