C read write XML of code sharing
- 2021-12-12 05:26:32
- OfStack
Read 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 > Zhang 3</name>
<age>15</age>
<gender> Male </gender>
</user>
<user id='2'>
<name> Li 4</name>
<age>14</age>
<gender> Male </gender>
</user>
</users>
test.xml
Write XML
string fileName =@"D:\test.xml";
XmlDocument xmlDoc = new XmlDocument();
XmlNode header = xmlDoc.CreateXmlDeclaration("1.0","utf-8",null);
xmlDoc.AppendChild(header);
// Create 1 Level node
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>
/// Create the entire user Elements of
/// </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 = " Male ";
list.Add(user);
}
return list;
}
Write XML
Entity class
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