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;

                }

            }

  • 相关阅读:
    linux下telnet安装与使用
    用日志记录Linux用户执行的每一条命令(history)
    监视网络接口TCP状态信息数据有多种工具或命令。下面举例一些:
    [C#]Winform后台提交数据且获取远程接口返回的XML数据,转换成DataSet
    C#生成Code128码
    BULK INSERT如何将大量数据高效地导入SQL Server
    SQLite中的时间日期函数
    C# winform小票打印
    c#读写txt文件
    C#-WinForm 串口通信
  • 原文地址:https://www.cnblogs.com/yonguibe/p/2674984.html
Copyright © 2011-2022 走看看