Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengendalikan pensirilan objek dan penyahserikatan dalam pembangunan C#

Bagaimana untuk mengendalikan pensirilan objek dan penyahserikatan dalam pembangunan C#

PHPz
PHPzasal
2023-10-10 18:07:44989semak imbas

Bagaimana untuk mengendalikan pensirilan objek dan penyahserikatan dalam pembangunan C#

Cara mengendalikan pensirilan objek dan penyahserikatan dalam pembangunan C# memerlukan contoh kod khusus

Dalam pembangunan C#, pensirilan objek dan penyahserikatan adalah konsep yang sangat penting. Pensirian menukarkan objek kepada format yang boleh dihantar melalui rangkaian atau disimpan pada cakera, manakala penyahsiran menukar data bersiri kembali ke objek asal. Artikel ini akan memperkenalkan cara mengendalikan pensirilan dan penyahserikatan objek dalam C#, dan menyediakan beberapa contoh kod khusus.

  1. Gunakan pustaka Json.NET untuk pensirilan dan penyahsirilan

Json.NET ialah perpustakaan pihak ketiga yang popular yang membenarkan pensirilan objek dan penyahsirilan dalam C#. Pertama, kita perlu memasang perpustakaan Json.NET. Json.NET boleh dipasang dalam Visual Studio melalui pengurus pakej NuGet.

a) Contoh siri objek

Contoh kod berikut menunjukkan cara mensiri objek Orang menjadi rentetan JSON:

using Newtonsoft.Json;
using System;

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

public static void Main()
{
    Person person = new Person { Name = "John Doe", Age = 30 };
    string json = JsonConvert.SerializeObject(person);
    Console.WriteLine(json);
}

Dalam contoh ini, kami menggunakan kaedah JsonConvert.SerializeObject untuk menukar objek Orang menjadi rentetan JSON dan keluarkan keputusan melalui Console.WriteLine.

b) Contoh Deserialization Objek

Contoh kod berikut menunjukkan cara untuk menyahsiri rentetan JSON menjadi objek Person:

using Newtonsoft.Json;
using System;

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

public static void Main()
{
    string json = "{"Name":"John Doe","Age":30}";
    Person person = JsonConvert.DeserializeObject<Person>(json);
    Console.WriteLine(person.Name);
    Console.WriteLine(person.Age);
}

Dalam contoh ini, kami menggunakan kaedah JsonConvert.DeserializeObject untuk menukar rentetan JSON kepada objek Person dan mengeluarkan nilai sifat Nama dan Umur melalui Console.WriteLine.

  1. Gunakan BinaryFormatter untuk bersiri dan penyahseririan

Selain perpustakaan Json.NET, C# juga menyediakan kelas BinaryFormatter, yang boleh digunakan untuk menyerikan objek ke dalam format binari dan menyahsiri data binari menjadi objek . Berikut ialah contoh pensirilan dan penyahsirilan menggunakan BinaryFormatter:

a) Contoh Pensirilan Objek

Contoh kod berikut menunjukkan cara mensiri objek Orang menjadi data binari:

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

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

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

    BinaryFormatter formatter = new BinaryFormatter();
    MemoryStream stream = new MemoryStream();

    formatter.Serialize(stream, person);
    byte[] binaryData = stream.ToArray();

    stream.Close();

    Console.WriteLine(BitConverter.ToString(binaryData));
}

Dalam contoh ini, Kami mencipta objek Orang dan mensirikannya ke dalam aliran memori menggunakan kaedah BinaryFormatter.Serialize. Kemudian, dapatkan data binari melalui kaedah MemoryStream.ToArray dan keluarkannya sebagai rentetan menggunakan kaedah BitConverter.ToString.

b) Contoh Penyahserikatan Objek

Contoh kod berikut menunjukkan cara menyahsiri data perduaan menjadi objek Orang:

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

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

public static void Main()
{
    string binaryDataString = "01-00-00-00-02-00-00-00-00-00-00-00-09-4A-6F-68-6E-20-44-6F-65-00-1E-00-00-00-00-00-00-00";
    byte[] binaryData = BitConverter.GetBytes(binaryDataString.Replace("-", ""));

    BinaryFormatter formatter = new BinaryFormatter();
    MemoryStream stream = new MemoryStream(binaryData);

    Person person = (Person)formatter.Deserialize(stream);
    stream.Close();

    Console.WriteLine(person.Name);
    Console.WriteLine(person.Age);
}

Dalam contoh ini, kami menggunakan kaedah BinaryFormatter.Deserialisasi untuk menyahsiri data binari menjadi Objek Orang dan mengeluarkan nilai sifat Nama dan Umur melalui Console.WriteLine.

Ringkasan

Melalui artikel ini, kami mempelajari cara mengendalikan pensirilan objek dan penyahserikatan dalam pembangunan C#. Kami menggunakan pustaka Json.NET dan kelas BinaryFormatter untuk melaksanakan contoh bersiri dan penyahsirilan, dan menyediakan coretan kod khusus. Sila pilih kaedah yang sesuai untuk mengendalikan pensirilan objek dan penyahseririan berdasarkan keperluan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk mengendalikan pensirilan objek dan penyahserikatan dalam pembangunan 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