我是靠谱客的博主 搞怪书包,最近开发中收集的这篇文章主要介绍C# 读写XML(代码分享),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

读XML

XmlDocument xd = new XmlDocument(); 
      string fileName = @"D:test.xml";
      xd.Load(fileName);
      XmlNodeList xmlNoteList = xd.GetElementsByTagName("user");
      List<User> users = new List<User>();
     
      foreach (XmlElement item in xmlNoteList)
      {
        User user = new User();
        user.Id = int.Parse(item.GetAttribute("id"));
        XmlNodeList xnl = item.ChildNodes;
        user.Name = xnl[0].InnerXml;
        user.Age =int.Parse(xnl[1].InnerXml);
        user.Gender = xnl[2].InnerXml;
        users.Add(user);
      }
      foreach (var item in users)
      {
        Console.WriteLine(item);
      }

Read XML
<?xml version="1.0" encoding="gb2312"?>
<users>
  <user id='1'>
    <name >张三</name>
    <age>15</age>
    <gender>男</gender>
  </user>
  <user id='2'>
    <name>李四</name>
    <age>14</age>
    <gender>男</gender>
  </user>
</users>

test.xml

写XML

string fileName =@"D:test.xml";
      XmlDocument xmlDoc = new XmlDocument();
      XmlNode header = xmlDoc.CreateXmlDeclaration("1.0","utf-8",null);
      xmlDoc.AppendChild(header);
      //创建一级节点
      XmlElement rootNode = xmlDoc.CreateElement("users");
      List<User> list = GetUsers();
      foreach (var item in list)
      {
        XmlElement xn = InserUser(item,xmlDoc);
        rootNode.AppendChild(xn);
      }  
      xmlDoc.AppendChild(rootNode);
      xmlDoc.Save(fileName);
    }
    /// <summary>
    /// 创建整个user的元素
    /// </summary>
    /// <param name="user"></param>
    /// <param name="xmlDoc"></param>
    /// <returns></returns>
    private static XmlElement InserUser(User user, XmlDocument xmlDoc)
    {
      XmlElement xn = xmlDoc.CreateElement("user");
      xn.SetAttribute("id", user.Id + "");
      xn.AppendChild(GetXmlNode(xmlDoc,"name",user.Name));
      xn.AppendChild(GetXmlNode(xmlDoc, "age", user.Age + ""));
      xn.AppendChild(GetXmlNode(xmlDoc, "gender", user.Gender));
      return xn;
    }
    private static XmlElement GetXmlNode(XmlDocument xmlDoc,string name,string value)
    {
      XmlElement xn = xmlDoc.CreateElement(name);
      xn.InnerText = value;
      return xn;
    }
    private static List<User> GetUsers()
    {
      List<User> list = new List<User>();
      for (int i = 0; i < 10; i++)
      {
        User user = new User();
        user.Id = i;
        user.Name = "Name" + i;
        user.Age = 15;
        user.Gender = "男";
        list.Add(user);
      }
      return list;
    }

Write XML

实体类

class User
  {
    public int Id { set; get; }
    public string Name { get; set; }
    public int Age { get; set; }
    public string Gender { set; get; }
    public override string ToString()
    {
      return Id +","+Name + "," +Age+"," + Gender;
    }
  }

Entity

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持靠谱客!

最后

以上就是搞怪书包为你收集整理的C# 读写XML(代码分享)的全部内容,希望文章能够帮你解决C# 读写XML(代码分享)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(93)

评论列表共有 0 条评论

立即
投稿
返回
顶部