C#反序列化

在 C# 編程中,反序列化是序列化的相反過程。開發人員可以從字節流中讀取內容並轉爲對象。在這裏,我們將使用BinaryFormatter.Deserialize(stream)方法反序列化流。

C#反序列化

C# 反序列化示例

下面來看看 C# 中的反序列化的簡單例子。參考以下示例代碼 -

using System;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
[Serializable]
class Student
{
    public int rollno;
    public string name;
    public Student(int rollno, string name)
    {
        this.rollno = rollno;
        this.name = name;
    }
}
public class DeserializeExample
{
    public static void Main(string[] args)
    {
        FileStream stream = new FileStream(@"F:\worksp\csharp\serialize.txt", FileMode.OpenOrCreate);
        BinaryFormatter formatter = new BinaryFormatter();

        Student s = (Student)formatter.Deserialize(stream);
        Console.WriteLine("Rollno: " + s.rollno);
        Console.WriteLine("Name: " + s.name);

        stream.Close();
    }
}

執行上面示例代碼,得到以下結果 -

Rollno: 1010
Name: Curry