logo

C# סריאליזציה

ב-C#, סדרה היא תהליך של המרת אובייקט לזרם בתים כך שניתן לשמור אותו בזיכרון, קובץ או מסד נתונים. התהליך ההפוך של סריאליזציה נקרא דה-סריאליזציה.

b+ עצים

סריאליזציה נמצאת בשימוש פנימי ביישומים מרוחקים.

C# בהמשכה

C# SerializableAttribute

כדי לבצע סדרה של האובייקט, עליך להחיל תכונה סריאליזית לייחס לסוג. אם לא תגיש בקשה תכונה סריאליזית לייחס לסוג, SerializationException חריג נזרק בזמן ריצה.

דוגמה לסריאליזציה של C#

בוא נראה את הדוגמה הפשוטה של ​​סריאליזציה ב-C# שבה אנחנו עושים סדרה של האובייקט של כיתה Student. הנה, אנחנו הולכים להשתמש BinaryFormatter.Serialize(זרם, הפניה) שיטה לסידרה של האובייקט.

enum tostring java
 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 

כפי שאתה יכול לראות, הנתונים בסידרה מאוחסנים בקובץ. כדי לקבל את הנתונים, עליך לבצע דה-סריאליזציה.