Программный код Serializer.cs
⇐ ПредыдущаяСтр 2 из 2 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Runtime.Serialization.Formatters.Binary; using System.Xml.Serialization;
namespace ConsoleApplication1 { public static class Serializer { #region Сериализация и десериализация по одному экземпляру
public static void SaveToBinnary<T>(String FileName, T SerializableObject) { using (FileStream fs = File.Create(FileName)) { BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(fs, SerializableObject); } }
public static T LoadFromBinnary<T>(String FileName) { using (FileStream fs = File.Open(FileName, FileMode.Open)) { BinaryFormatter formatter = new BinaryFormatter(); return (T)formatter.Deserialize(fs); } }
//====================================================================
public static void SaveToXml<T>(String FileName, T SerializableObject) { XmlSerializer serializer = new XmlSerializer(typeof(T)); using (TextWriter textWriter = new StreamWriter(FileName)) { serializer.Serialize(textWriter, SerializableObject); } }
public static T LoadFromXml<T>(String FileName) { XmlSerializer serializer = new XmlSerializer(typeof(T)); using (TextReader textReader = new StreamReader(FileName)) { return (T)serializer.Deserialize(textReader); } } #endregion
#region Сериализация и десериализация списка объектов
public static void SaveListToBinnary<T>(String FileName, List<T> SerializableObjects) { using (FileStream fs = File.Create(FileName)) { BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(fs, SerializableObjects); } }
public static List<T> LoadListFromBinnary<T>(String FileName) { using (FileStream fs = File.Open(FileName, FileMode.Open)) { BinaryFormatter formatter = new BinaryFormatter(); return (List<T>)formatter.Deserialize(fs); } }
//====================================================================
public static string SaveListToXml<T>(String FileName, List<T> SerializableObjects) { XmlSerializer serializer = new XmlSerializer(typeof(List<T>)); TextWriter textWriter = new StreamWriter(FileName, false);
try { serializer.Serialize(textWriter, SerializableObjects); textWriter.Close(); return "Ok"; } catch (Exception e) { textWriter.Close(); return "Error"; }
}
public static List<T> LoadListFromXml<T>(String FileName) { XmlSerializer serializer = new XmlSerializer(typeof(List<T>));
FileStream fs = new FileStream(FileName, FileMode.OpenOrCreate); TextReader textReader = new StreamReader(fs);
try { List<T> LL = (List<T>)serializer.Deserialize(textReader); textReader.Close(); return LL; } catch (Exception e) { textReader.Close(); return null; }
/* using (TextReader textReader = new StreamReader(FileName)) { return (List<T>)serializer.Deserialize(textReader); }*/ } #endregion
} }
Читайте также: Воспользуйтесь поиском по сайту: ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|