参考了Fish LI的Xml读取文章,写了XML序列化和反序列化的文章。
序列化:把实体列转化成XML。反序列化:把XML按一定的规则转化成需要的实体列。
序列化和反序列化化使用到的类,
using System.Xml.Serialization;
using System.IO;
using System.Xml;
XML一些属性:
XMLAttribtue:属性
XMLText:xml值
XmlElement:xml标签值
XML调试,反序列化失败。常见的原因是XML的定义和Class类不一致,导致失败。我的做法是把class序列化,比较序列化的值和需要反序列化的XML有什么不同。
代码使用的类,Class C
public class C { public string Company { get; set; } [XmlElement("B2")] public List<B> b { get; set; } } public class B { [XmlAttribute("sex")] public string B_Attribute { get; set; } [XmlAttribute("age")] public string B_Attribute_Age { get; set; } [XmlText] public string B_Name { get; set; } }