首頁 > 後端開發 > C++ > 如何使用 XmlSerializer 將 XML 資料反序列化為 C# 物件?

如何使用 XmlSerializer 將 XML 資料反序列化為 C# 物件?

Patricia Arquette
發布: 2025-01-15 16:03:12
原創
771 人瀏覽過

How to Deserialize XML Data into a C# Object Using XmlSerializer?

使用 XmlSerializer 將 XML 資料轉換為 C# 物件

本指南示範如何使用 XmlSerializer 將 XML 資料有效轉換為可用的 C# 物件。 這對於在應用程式中處理 XML 資料至關重要。 關鍵是建立鏡像 XML 結構的 C# 類別。

建立您的 C# 類別

讓我們考慮這個範例 XML:

<code class="language-xml"><steplist><step><name>Name1</name><desc>Desc1</desc></step><step><name>Name2</name><desc>Desc2</desc></step></steplist></code>
登入後複製

要反序列化此 XML,您將定義兩個對應的 C# 類別:

<code class="language-csharp">[XmlRoot("StepList")]
public class StepList
{
    [XmlElement("Step")]
    public List<Step> Steps { get; set; }
}

public class Step
{
    [XmlElement("Name")]
    public string Name { get; set; }
    [XmlElement("Desc")]
    public string Desc { get; set; }
}</code>
登入後複製

XmlRoot 屬性指定 XML 的根元素,而 XmlElement 將 XML 元素對應到類別屬性。

反序列化過程

現在,讓我們使用 XmlSerializer 來執行反序列化:

<code class="language-csharp">string xmlData = @"<steplist><step><name>Name1</name><desc>Desc1</desc></step><step><name>Name2</name><desc>Desc2</desc></step></steplist>";

XmlSerializer serializer = new XmlSerializer(typeof(StepList));
using (TextReader reader = new StringReader(xmlData))
{
    StepList deserializedData = (StepList)serializer.Deserialize(reader);
    // Access and process deserializedData here
}</code>
登入後複製

此程式碼讀取 XML 字串,使用 XmlSerializer 將其轉換為 StepList 對象,然後允許您存取和使用 deserializedData 對像中的資料。

以上是如何使用 XmlSerializer 將 XML 資料反序列化為 C# 物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板