Xml Serialization Helper 2
using System;
using System.IO;
using System.Collections.Generic;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
namespace A4G.Utils.Xml
{
public static class XmlSerializationHelper<T>
{
private static readonly XmlSerializer _serializer = new XmlSerializer(typeof(T));
public static void SerializeToFile(string fileName, T objectToSerialize)
{
XmlTextWriter writer = new XmlTextWriter(fileName, Encoding.Default);
writer.Formatting = Formatting.Indented;
try
{
_serializer.Serialize(writer, objectToSerialize);
}
finally
{
writer.Close();
}
}
public static T DeserializeFromFile(string fileName)
{
XmlTextReader reader = new XmlTextReader(fileName);
try
{
T serializedObject = (T) _serializer.Deserialize(reader);
return serializedObject;
}
finally
{
reader.Close();
}
}
public static void SerializeToStream(Stream destination, T objectToSerialize)
{
_serializer.Serialize(destination, objectToSerialize);
}
public static T DeserializeFromStream(Stream source)
{
return (T)_serializer.Deserialize(source);
}
}
}
Related examples in the same category