C# serializācija
C # valodā serializācija ir process, kurā objektu pārvērš baitu straumē, lai to varētu saglabāt atmiņā, failā vai datu bāzē. Serializācijas apgriezto procesu sauc par deserializāciju.
Serializācija tiek iekšēji izmantota attālās lietojumprogrammās.
C# SerializableAttribute
Lai serializētu objektu, jums ir jāpiesakās Serializējams atribūts atribūtu tipam. Ja nepiesakāties Serializējams atribūts atribūts tipam, SerializationException izņēmums tiek izmests izpildlaikā.
C# serializācijas piemērs
Apskatīsim vienkāršu serializācijas piemēru C#, kur mēs serializējam Studentu klases objektu. Šeit mēs izmantosim BinaryFormatter.Serialize(straume, atsauce) metode objekta serializēšanai.
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
Kā redzat, serializētie dati tiek saglabāti failā. Lai iegūtu datus, jums jāveic deserializācija.