https://download.csdn.net/download/sns1991sns/88041637
gitee下载地址:https://gitee.com/linsns/snssharp
使用举例:
Data data = new Data();
//写入
XmlFile.Write("7.xml", data);
//读取
data=XmlFile.Read<Data>("7.xml");
其中Data是存储数据的可序列的类
[Serializable]
class Data
{
public int a;
public int b;
public int c;
}
其中XmlFile类源码如下:
public static class XmlFile
{
/// <summary>
/// 根据传入的文件全路径读取文件,注:类的访问修饰符必须是:public
/// </summary>
/// <typeparam name="T">数据类型</typeparam>
/// <param name="filePath">文件全路径</param>
/// <returns></returns>
public static T Read<T>(string filePath)
{
object obj;
try
{
using (FileStream reader = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
XmlSerializer serial = new XmlSerializer(typeof(T));
obj = serial.Deserialize(reader);
}
}
catch(Exception ex)
{
obj = null;
}
return (T)obj;
}
/// <summary>
/// 传入文件全路径,将数据结构保存为文件
/// </summary>
/// <param name="filePath">文件全路径</param>
/// <param name="obj">要保存为文件的数据结构</param>
public static void Write(string filePath, object obj)
{
try
{
FileInfo info = new FileInfo(filePath);
if (info.Exists) info.Attributes = FileAttributes.Normal;
using (StreamWriter writer = new StreamWriter(filePath))
{
if (obj!=null)
{
Type tempType = obj.GetType();
XmlSerializer serial = new XmlSerializer(tempType);
serial.Serialize(writer, obj);
}
}
}
catch(Exception) { }
}
}
技术交流
QQ群: 577276243