ホームページ  >  記事  >  バックエンド開発  >  C# 開発でオブジェクトのシリアル化と逆シリアル化を処理する方法

C# 開発でオブジェクトのシリアル化と逆シリアル化を処理する方法

PHPz
PHPzオリジナル
2023-10-10 18:07:441031ブラウズ

C# 開発でオブジェクトのシリアル化と逆シリアル化を処理する方法

C# 開発でオブジェクトのシリアル化と逆シリアル化を処理する方法には、特定のコード サンプルが必要です

C# 開発では、オブジェクトのシリアル化と逆シリアル化は非常に重要な概念です。シリアル化は、オブジェクトをネットワーク経由で送信したり、ディスクに保存したりできる形式に変換します。一方、逆シリアル化は、シリアル化されたデータを元のオブジェクトに変換します。この記事では、C# でオブジェクトのシリアル化と逆シリアル化を処理する方法を紹介し、いくつかの具体的なコード例を示します。

  1. シリアル化と逆シリアル化に Json.NET ライブラリを使用する

Json.NET は、C# のオブジェクトのシリアル化と逆シリアル化で便利なオブジェクトのシリアル化を可能にする、人気のあるサードパーティ ライブラリです。まず、Json.NET ライブラリをインストールする必要があります。 Json.NET は、NuGet パッケージ マネージャーを介して Visual Studio にインストールできます。

a) オブジェクトのシリアル化の例

次のコード例は、Person オブジェクトを 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);
}

この例では、JsonConvert.SerializeObject を使用します。メソッドは、Person オブジェクトを JSON 文字列に変換し、Console.WriteLine を通じて結果を出力します。

b) オブジェクトの逆シリアル化の例

次のコード例は、JSON 文字列を 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);
}

この例では、JsonConvert.DeserializeObject を使用します。 JSON 文字列を Person オブジェクトに変換し、Console.WriteLine を通じて Name プロパティと Age プロパティの値を出力するメソッド。

  1. シリアル化と逆シリアル化に BinaryFormatter を使用する

Json.NET ライブラリに加えて、C# には、オブジェクトをバイナリ形式にシリアル化するために使用できる BinaryFormatter クラスも用意されています。バイナリ データをオブジェクトに逆シリアル化します。以下は、BinaryFormatter を使用したシリアル化と逆シリアル化の例です。

a) オブジェクトのシリアル化の例

次のコード例は、Person オブジェクトをバイナリ データにシリアル化する方法を示しています。 #この例では、Person オブジェクトを作成し、BinaryFormatter.Serialize メソッドを使用してメモリ ストリームにシリアル化します。次に、MemoryStream.ToArray メソッドを通じてバイナリ データを取得し、BitConverter.ToString メソッドを使用して文字列として出力します。

b) オブジェクトの逆シリアル化の例

次のコード例は、バイナリ データを Person オブジェクトに逆シリアル化する方法を示しています。

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));
}

この例では、BinaryFormatter.Deserialize メソッドを使用します。バイナリ データを Person オブジェクトに逆シリアル化し、Console.WriteLine を通じて Name プロパティと Age プロパティの値を出力します。

概要

この記事では、C# 開発でオブジェクトのシリアル化と逆シリアル化を処理する方法を学びました。 Json.NET ライブラリと BinaryFormatter クラスを使用して、それぞれシリアル化と逆シリアル化の例を実行し、特定のコード スニペットを提供しました。実際のニーズに基づいて、オブジェクトのシリアル化と逆シリアル化を処理する適切な方法を選択してください。

以上がC# 開発でオブジェクトのシリアル化と逆シリアル化を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。