Serializace C#

Serializace C#

V C# je serializace procesem převodu objektu na byte stream, aby jej bylo možné uložit do paměti, souboru nebo databáze. Opačný proces serializace se nazývá deserializace.

Serializace se interně používá ve vzdálených aplikacích.

C# serializace

C# SerializableAttribute

Chcete-li objekt serializovat, musíte použít SerializableAttribute atribut k typu. Pokud se nepřihlásíte SerializableAttribute atribut k typu, Výjimka serializace výjimka je vyvolána za běhu.

Příklad serializace v C#

Podívejme se na jednoduchý příklad serializace v C#, kde serializujeme objekt třídy Student. Tady, budeme používat BinaryFormatter.Serialize(stream, reference) metoda pro serializaci objektu.

 using System; using System.IO; using System.Runtime.Serialization.Formatters.Binary; [Serializable] class Student { int rollno; string name; public Student(int rollno, string name) { this.rollno = rollno; this.name = name; } } public class SerializeExample { public static void Main(string[] args) { FileStream stream = new FileStream('e:\sss.txt', FileMode.OpenOrCreate); BinaryFormatter formatter=new BinaryFormatter(); Student s = new Student(101, 'sonoo'); formatter.Serialize(stream, s); stream.Close(); } }  

sss.txt:

 JConsoleApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Student rollnoname e sonoo  

Jak vidíte, serializovaná data jsou uložena v souboru. Chcete-li získat data, musíte provést deserializaci.