Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menyimpan dan Mendapatkan Objek Bersiri dalam Fail Menggunakan C#?

Bagaimanakah Saya Boleh Menyimpan dan Mendapatkan Objek Bersiri dalam Fail Menggunakan C#?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-23 11:31:14214semak imbas

How Can I Save and Retrieve Serialized Objects in Files Using C#?

Berterusan dan Memulihkan Objek dalam Fail menggunakan C#

Siri objek membolehkan penyimpanan dan mendapatkan semula keadaan objek. Ini memerlukan kelas objek ditandakan dengan atribut [Serializable].

Mari kita ilustrasikan dengan contoh:

<code class="language-csharp">[Serializable]
public class MyClass
{
    public string MyProperty { get; set; }
}

MyClass myObject = new MyClass { MyProperty = "myValue" };</code>

Menyimpan myObject ke fail boleh dilakukan menggunakan kaedah ini:

Siri Perduaan:

<code class="language-csharp">WriteToBinaryFile<MyClass>("C:\myObject.bin", myObject);</code>

Siri XML:

<code class="language-csharp">WriteToXmlFile<MyClass>("C:\myObject.xml", myObject);</code>

Siri JSON:

<code class="language-csharp">WriteToJsonFile<MyClass>("C:\myObject.json", myObject);</code>

Fungsi ini menerima laluan fail dan objek untuk disirikan.

Untuk mendapatkan semula objek:

Siri Perduaan:

<code class="language-csharp">MyClass myObject = ReadFromBinaryFile<MyClass>("C:\myObject.bin");</code>

Siri XML:

<code class="language-csharp">MyClass myObject = ReadFromXmlFile<MyClass>("C:\myObject.xml");</code>

Siri JSON:

<code class="language-csharp">MyClass myObject = ReadFromJsonFile<MyClass>("C:\myObject.json");</code>

Fungsi ini menggunakan laluan fail dan mengembalikan objek desiri.

Yang penting, kelas mesti mempunyai atribut [Serializable] untuk penyirian dan penyahserikan berfungsi dengan betul.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyimpan dan Mendapatkan Objek Bersiri dalam Fail Menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn