Computer >> Máy Tính >  >> Lập trình >> C#

Serialization và Deserialization trong C #

Việc tuần tự hóa chuyển đổi các đối tượng thành một luồng byte và đưa nó đến một dạng mà nó có thể được viết trên luồng. Điều này được thực hiện để lưu nó vào bộ nhớ, tệp hoặc cơ sở dữ liệu.

Việc tuần tự hóa có thể được thực hiện dưới dạng -

Tuần tự hóa nhị phân

Tất cả các thành viên, ngay cả các thành viên ở chế độ chỉ đọc, đều được xếp theo thứ tự

Tuần tự hóa XML

Nó tuần tự hóa các trường công khai và thuộc tính của một đối tượng thành luồng XML phù hợp với một tài liệu ngôn ngữ định nghĩa lược đồ XML cụ thể.

Hãy để chúng tôi xem một ví dụ. Đầu tiên thiết lập luồng -

FileStream fstream = new FileStream("d:\\new.txt", FileMode.OpenOrCreate);
BinaryFormatter formatter=new BinaryFormatter();

Bây giờ, hãy tạo một đối tượng của lớp và gọi hàm tạo có ba tham số -

Employee emp = new Employee(030, "Tom", “Operations”);

Thực hiện tuần tự hóa.

formatter.Serialize(fStream, emp);

Deserialization là mặt trái của tuần tự hóa và với nó, bạn có thể đọc đối tượng từ luồng byte.

formatter.Deserialize(fStream);