ホームページ > バックエンド開発 > C++ > C# でシリアル化された XML 文字列からオブジェクトを逆シリアル化するにはどうすればよいですか?

C# でシリアル化された XML 文字列からオブジェクトを逆シリアル化するにはどうすればよいですか?

DDD
リリース: 2024-12-26 14:39:17
オリジナル
882 人が閲覧しました

How Can I Deserialize an Object from a Serialized XML String in C#?

文字列からのオブジェクトの逆シリアル化

提供されたメソッド SerializeObject を使用すると、オブジェクトをファイルにシリアル化できます。オブジェクトの XML 表現を文字列として取得するには、わずかな変更が必要です。

解決策には、StreamWriter を StringWriter に置き換えることが含まれます。

public static string SerializeObject<T>(this T toSerialize)
{
    XmlSerializer xmlSerializer = new XmlSerializer(toSerialize.GetType());

    using(StringWriter textWriter = new StringWriter())
    {
        xmlSerializer.Serialize(textWriter, toSerialize);
        return textWriter.ToString();
    }
}
ログイン後にコピー

GetType() メソッドが使用されます。 XmlSerializer コンストラクター内で、T のすべての可能なサブクラスがシリアル化中に考慮されるようにします。

の使用とは異なります。 typeof(T)、GetType() はすべてのサブクラスをカバーし、コードで継承を使用してオブジェクトを処理できるようにします。 typeof(T) が問題を引き起こす詳細と具体的な例については、次のリンクを参照してください: http://ideone.com/1Z5J1。

さらに、.NET ランタイムのバージョンが異なることにも注意してください。 typeof(T) でエラーが発生した場合、別の例外メッセージが生成される場合があります。

以上がC# でシリアル化された XML 文字列からオブジェクトを逆シリアル化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート