首页 > 后端开发 > C++ > 如何有效地将 XML 数据反序列化为 C# 对象?

如何有效地将 XML 数据反序列化为 C# 对象?

Patricia Arquette
发布: 2025-01-15 16:12:44
原创
673 人浏览过

How to Effectively Deserialize XML Data into C# Objects?

C# XML反序列化:完整指南

将XML数据反序列化为对象是访问和处理各种应用程序中结构化信息的关键步骤。本文将深入探讨如何构建类以实现成功的XML反序列化。

构建用于反序列化的类

考虑以下XML示例:

<steplist><step><name>Name1</name><desc>Desc1</desc></step><step><name>Name2</name><desc>Desc2</desc></step></steplist>
登录后复制

为了反序列化此XML,定义以下类:

[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; }
}
登录后复制

示例用法

以下测试代码演示了反序列化过程:

string testData = @"<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(testData))
{
    StepList result = (StepList)serializer.Deserialize(reader);
}
登录后复制

从文件加载

如果XML数据存储在文件中,可以使用FileStream进行反序列化:

using (FileStream fileStream = new FileStream("<你的文件路径>", FileMode.Open))
{
    StepList result = (StepList)serializer.Deserialize(fileStream);
}
登录后复制

通过遵循这些指南并使用提供的示例,您可以有效地反序列化XML数据,并在应用程序中将其作为对象处理。

以上是如何有效地将 XML 数据反序列化为 C# 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板