zoukankan      html  css  js  c++  java
  • XML操作

    一、写

            //创建Xdocument对象
             XDocument xDoc = new XDocument();
             //创建一个根节点,定义节点名字Student
             XElement xEle = new XElement("Student");
             //加载到XML文档
             xDoc.Add(xEle);
     
            //添加一个属性值,
             XAttribute xAttr = new XAttribute("Id","888");
             xEle.Add(xAttr);
     
             //添加节点
             XElement xEleName = new XElement("Name","lei");
             XElement xEleAge = new XElement("Age","18");
             XElement xEleGender = new XElement("Gender","");
             xEle.Add(xEleName,xEleAge,xEleGender);
             xEleAge.Value = "22";
             //保存文档
             xDoc.Save(@"d:xmlwrite.xml");
     
    
       
    
    *****************输出的XML************************* 
     <?xml version="1.0" encoding="utf-8"?>
      <Student Id="888">
      <Name>lei</Name> 
      <Age>22</Age>
      <Gender>男</Gender>
      </Student>
    **************************************************

    二、读

    //读取XML文档
    XDocument XDoc2 = XDocument.Load(@"d:caoyi.xml");
    //获取根节点
    XElement Root = XDoc2.Root;
    //输出根节点的Name,Value
    Console.WriteLine("Root.Name:{0}",Root.Name);//输出:Student
    Console.WriteLine("Root.Value:{0}",Root.Value);//输出:lei22男
    Console.WriteLine("Root.ToString:{0}",Root.ToString());//输出:节点下的整个XML
    //获取子元素
    XElement xEle1 =Root.Element("Name");//获取子元素组
    Console.WriteLine(xEle1.Value);//输出:lei
     
    foreach (XElement ele in Root.Elements()) 
    {
        Console.WriteLine("{0}-{1}",ele.Name,ele.Value);
    }

    三、序列化

           //需要写[Serializable]标签
            [Serializable]
            public class Person
            {
                public int Age { get; set; }
                public string Name { get; set; }
    
                public char Gender { get; set; }
            }         
    
              List<Person> perList = new List<Person>()
                {
                    new Person(){ Name="张三1",Age=19, Gender=''},
                    new Person(){ Name="张三2",Age=19, Gender=''},
                    new Person(){ Name="张三3",Age=19, Gender=''},
                    new Person(){ Name="张三4",Age=19, Gender=''},
                    new Person(){ Name="张三5",Age=19, Gender=''},
                    new Person(){ Name="张三6",Age=19, Gender=''},
                };
                using (FileStream file = new FileStream("xmlserializable.xml", FileMode.Create, FileAccess.Write))
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(List<Person>));
                    serializer.Serialize(file,perList);
                }    
  • 相关阅读:
    进程同步&&进程互斥
    CHAP4 字符串和格式化输入输出
    记录学习到的内容
    数据链路层 差错控制
    二叉树的顺序存储
    Java复习笔记
    Stream流
    函数式接口
    网络编程
    接口,多态,抽象类总结
  • 原文地址:https://www.cnblogs.com/shanoon/p/4859829.html
Copyright © 2011-2022 走看看