老师留下作业就走了,对泛型不熟悉,没思路啊。。求指点,最好附加代码
public class XmlHelper
{
public List<T> LoadXml<T>(string path) { }
public void SaveXml<T>(string path) { }
}C#xml泛型
public class XmlHelper
{
public List<T> LoadXml<T>(string path) { }
public void SaveXml<T>(string path) { }
}C#xml泛型
缺条件?第一个怎么用泛型加载xml文件我都不会
这个我知道。。那怎么用泛型加载xml文件?
大神。。这有点高深小弟看不懂Google:MemoryStream
Google:XmlSerializer
Google:.............
任何看不懂的扔到Google的搜索框,会得到一些信息,对信息中的某些信息再不懂,继续Google~
不断地填补知识,然后就懂了~
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;
using System.IO;
using System.Diagnostics;namespace XmlRefl
{
class Program
{
static void Main(string[] args)
{ List<XCls> cls1 = new List<XCls>(){
new XCls()
{
Id = 12345,
Name = "X-Man",
}}; XmlHelper hlper = new XmlHelper();
hlper.SaveXml("xcls.xml", cls1);
Process.Start("xcls.xml");
cls1.Clear();
cls1 = hlper.LoadXml<XCls>("xcls.xml");
Console.WriteLine("Count=" + cls1.Count);
Console.ReadLine();
}
} public class XCls
{
public int Id { get; set; } public string Name { get; set; }
} public class XmlHelper
{
public List<T> LoadXml<T>(string path)
{
XmlSerializer serializer = new XmlSerializer(typeof(List<T>));
Stream stream = File.OpenRead(path);
List<T> t = (List<T>)serializer.Deserialize(stream);
return t;
}
public void SaveXml<T>(string path, List<T> t)
{
XmlSerializer serializer = new XmlSerializer(typeof(List<T>));
FileStream stream = File.OpenWrite(path);
serializer.Serialize(stream, t);
stream.Close();
}
}
}