Skip to content

Instantly share code, notes, and snippets.

@ValdemarOrn
Created October 9, 2011 21:44
Show Gist options
  • Save ValdemarOrn/1274236 to your computer and use it in GitHub Desktop.
Save ValdemarOrn/1274236 to your computer and use it in GitHub Desktop.
Serialize any object to XML
class Serializer
{
public static string SerializeToXML(object data)
{
XmlSerializer serializer = new XmlSerializer(data.GetType());
StringWriter sw = new StringWriter();
serializer.Serialize(sw, data);
return sw.ToString();
}
public static object DeserializeToXML(string root, Type outType)
{
XmlSerializer serializer = new XmlSerializer(outType);
StringReader sr = new StringReader(root);
var rootDir = serializer.Deserialize(sr);
return rootDir;
}
public static void usageExample()
{
var obj = new SomeType(); // Class SomeType must have Attribute [Serializable]
string serial = Serializer.SerializeToXML(obj);
// Cast back to SomeType
var obj2 = (SomeType)Serializer.DeserializeToXML(serial, (new SomeType()).GetType());
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment