zoukankan      html  css  js  c++  java
  • 常用的xml文件操作

    xml文件主要结构如下

    <config>

    <item key="test" value="test"/>

    <item key="test" value="test"/>

    </config>

    一 读取

    XmlDocument xmlDoc = new XmlDocument();

      xmlDoc.Load(fileName);

    二 转换到list

    先建立一个实体类

    public  class QueueXml
        {
          
    public string Key
          {
              
    get;
              
    set;
          }

          
    public string Value
          {
              
    get;
              
    set;
          }
        }

    然后

     List<QueueXml> list = new List<QueueXml>();
            
                xmlDoc.Load(fileName);

                foreach (XmlNode node in xmlDoc.SelectNodes("/Config/Item"))
                {
                    QueueXml queueXml = new QueueXml();
                    queueXml.Key=node.Attributes["key"].Value;
                    queueXml.Value=node.Attributes["value"].Value;
                    list.Add(queueXml);
                }

    这样就可以了。

    三 寻找节点

     string xPath=string.Format("Config/Item[@key='{0}']",“test”)

     XmlNode node=xmlDoc.SelectSingleNode(xPath);

    四 移除节点并保存

    string xPath=string.Format("Config/Item[@key='{0}']",“test”)

     XmlNode node=xmlDoc.SelectSingleNode(xPath);
       xmlDoc.SelectSingleNode("/Config").RemoveChild(node);
        this.xmlDoc.Save(fileName);

    五 建立节点并保存

     XmlAttribute attrKey= xmlDoc.CreateAttribute("key");
                        attrKey.Value = str;
                        XmlAttribute attrValue= xmlDoc.CreateAttribute("value");
                        attrValue.Value = str;
                       
                        XmlNode node= xmlDoc.CreateElement("Item");
                        node.Attributes.Append(attrKey);
                        node.Attributes.Append(attrValue);

                        xmlDoc.SelectSingleNode("/Config").AppendChild(node);

                        this.xmlDoc.Save(fileName);

  • 相关阅读:
    [Leetcode] Rotate Image
    [Leetcode] Permutation Sequence
    [Leetcode] Palindrome Partitioning
    [Leetcode] Letter Combinations of a Phone Number
    Java里的多线程
    css学习2----css动态菜单
    css学习1----css超链接效果
    javascript判断身份证是否合法
    RMI(Remote Method Invocation,远程方法调用)
    struts.properties配置详解
  • 原文地址:https://www.cnblogs.com/chenleinet/p/2110609.html
Copyright © 2011-2022 走看看