namespace WindowsFormsUCMP
{
[XmlRoot("Setup")]
[Serializable]
public class Users
{
public string username = "admin";
public string password = "";
public string remember = "";
//public Users() { }
public override string ToString()
{
return $"[username={username}, password={password}, remember={remember}]";
}
}
[Serializable]
public class CServer
{
public string add = "localhost";
public bool remember = false;
public override string ToString()
{
return $"[address={add},remember={remember}]";
}
}
public class xml_serializer_manager
{
public void serialize_to_xml(string path, object obj)
{
XmlSerializer serializer = new XmlSerializer(obj.GetType());
string content = string.Empty;
//serialize
//using (StringWriter fs = new StringWriter())
//{
// serializer.Serialize(fs, obj);
// content = fs.ToString();
// //fs.Write(content);
//}
//using (StreamWriter stream_writer = new StreamWriter(path))
//{
// stream_writer.Write(content);
//}
//fs.Write(content);
using (FileStream fs = new FileStream(path,FileMode.OpenOrCreate))
{
serializer.Serialize(fs, obj);
fs.Close();
}
//save to file
}
/// <summary>
/// deserialize xml file to object
/// </summary>
/// <param name="path">the path of the xml file</param>
/// <param name="object_type">the object type you want to deserialize</param>
//反序列化
public object deserialize_from_xml(string path, Type object_type)
{
XmlSerializer serializer = new XmlSerializer(object_type);
using (StreamReader reader = new StreamReader(path))
{
return serializer.Deserialize(reader);
}
}
}
}