zoukankan      html  css  js  c++  java
  • C# xml 转 list 对象

    <classes>
    <class>
    <classname>高三一班</classname>
    <id>1</id>
    <remark>学霸</remark>
    <students>
    <student>
    <name>爱因斯坦</name>
    <sex>男</sex>
    <age>18</age >
    </student>
    <student>
    <name>牛顿</name>
    <sex>男</sex>
    <age>18</age >
    </student>
    </students>
    </class>
    <class>
    <classname>高三Ⅹ班</classname>
    <id>1</id>
    <remark>渣渣</remark>
    <students>
    <student>
    <name>特朗普</name>
    <sex>男</sex>
    <age>18</age >
    </student>
    <student>
    <name>本</name>
    <sex>男</sex>
    <age>18</age >
    </student>
    </students>
    </class>
    </classes>
    C# 类
    [Serializable, XmlType("class")]
    public class ClassSet
    {
    [XmlElement("classname")]
    public string Name { get; set; }

    [XmlElement("id")]
    public int Id { get; set; }

    [XmlElement("remark")]
    public string Remark { get; set; }

    [XmlArray("students")]
    public List<Student> Students { get; set; }

    [Serializable, XmlType("student")]
    public class Student
    {
    [XmlElement("name")]
    public string Name { get; set; }

    [XmlElement("sex")]
    public string Sex { get; set; }

    [XmlElement("age")]
    public int Age { get; set; }

    }
    }
    C# XmlToList
    public static List<T> XmlToList<T>(string xml,string rootName) where T : class
    {
    XmlSerializer serializer = new XmlSerializer(typeof(List<T>), new XmlRootAttribute(rootName));
    using (StringReader sr = new StringReader(xml))
    {
    List<T> list = serializer.Deserialize(sr) as List<T>;
    return list;
    }
    }
    调用
    XmlToList<ClassSet>(xml, "classes")

  • 相关阅读:
    基础技术
    Luogu1438 无聊的数列(线段树)
    树状数组从入门到入土
    左偏树
    PA2014-Final Zarowki(堆)
    BZOJ1455罗马游戏
    【小米oj】 海盗分赃
    【小米oj】 最少交换次数
    【小米oj】 大胃王的烦恼
    【小米oj】 不一样的排序
  • 原文地址:https://www.cnblogs.com/zhyp/p/15715776.html
Copyright © 2011-2022 走看看