91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c#實體類序列化的操作方法

c#
小樊
83
2024-07-18 04:09:48
欄目: 編程語言

在C#中,實體類序列化可以通過使用Serializable特性來實現。Serializable特性告訴編譯器該類可以被序列化,即可以將對象轉換為字節流或其他格式以便保存或傳輸。

以下是一個示例實體類的序列化操作方法:

using System;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;

[Serializable]
public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public class SerializationExample
{
    public void SerializeObject(string filePath, object obj)
    {
        IFormatter formatter = new BinaryFormatter();
        Stream stream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None);
        formatter.Serialize(stream, obj);
        stream.Close();
    }

    public object DeserializeObject(string filePath)
    {
        IFormatter formatter = new BinaryFormatter();
        Stream stream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);
        object obj = formatter.Deserialize(stream);
        stream.Close();
        return obj;
    }

    public static void Main()
    {
        Person person = new Person
        {
            Name = "John",
            Age = 30
        };

        SerializationExample example = new SerializationExample();
        example.SerializeObject("person.dat", person);

        Person deserializedPerson = (Person)example.DeserializeObject("person.dat");
        Console.WriteLine($"Deserialized person - Name: {deserializedPerson.Name}, Age: {deserializedPerson.Age}");
    }
}

在上面的示例中,我們定義了一個名為Person的可序列化實體類,并創建了一個SerializationExample類來執行序列化和反序列化操作。在Main方法中,我們實例化了一個Person對象,并調用SerializeObject方法將其序列化到名為person.dat的文件中。然后,我們從該文件中反序列化對象,并打印出反序列化后的Person對象的屬性值。

0
金乡县| 金寨县| 竹溪县| 阳新县| 镇康县| 永安市| 库伦旗| 万宁市| 伊金霍洛旗| 昌吉市| 宜春市| 潞西市| 新巴尔虎右旗| 长治县| 始兴县| 会宁县| 晋宁县| 台中市| 巴林右旗| 鲁山县| 大英县| 禄丰县| 腾冲县| 吴旗县| 峨边| 申扎县| 广汉市| 从江县| 舞阳县| 休宁县| 临汾市| 中西区| 鹤山市| 漳平市| 南京市| 泾源县| 鹤峰县| 锡林浩特市| 舒兰市| 修文县| 怀安县|