最近面试遇到做一个可以在外部快速修改的类似配置文件的东西,想到了Xml,用XmlSerializer 把Xml反序列化为一个类。下面贴一下当时写的代码,有些粗糙,有不对的地方希望大家多指点我这个还在找工作的小白。
使用XmlSerializer 需要引用命名空间是System.Xml.Serialization。
public Manger Manger { get; set; }
public void LoadXml()
{
//Xml文科存放的路径,暂时先放在这里
string xmlpath = Application.dataPath + "/mangerXml.xml";
StreamReader xmlsr = new StreamReader(xmlpath);
//将Xml内容反序列化为 Manger 这个类
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Manger));
Manger = xmlSerializer.Deserialize(xmlsr) as Manger;
//获得Manger 使用
Debug.Log(Manger.MaxTime);
}
//Manger 类是根据Xml文件内容定义
public class Manger
{
public float MaxTime;
public float CoolDown{ get; set; }
public List<int> Nums { get; set; }
public float K { get; set; }
public List<ObjInfo> ObjInfos{ get; set; }
}
public class ObjInfo
{
public int SpriteID { get; set; }
p