中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C# XML序列化與反序列化

c#
小樊
82
2024-10-14 13:21:59
欄目: 編程語言

在C#中,XML序列化和反序列化是將對象轉換為XML格式以及將XML格式還原為對象的過程。這允許您以XML形式存儲和傳輸對象數據。

序列化是將對象轉換為XML字符串的過程。在C#中,您可以使用System.Xml.Serialization命名空間中的類來實現序列化。以下是一個簡單的示例:

using System;
using System.IO;
using System.Xml.Serialization;

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

class Program
{
    static void Main()
    {
        Person person = new Person { FirstName = "John", LastName = "Doe", Age = 30 };

        XmlSerializer serializer = new XmlSerializer(typeof(Person));

        using (StringWriter writer = new StringWriter())
        {
            serializer.Serialize(writer, person);
            string xmlString = writer.ToString();
            Console.WriteLine(xmlString);
        }
    }
}

在這個例子中,我們創建了一個Person類,并使用XmlSerializer類將其序列化為XML字符串。

反序列化是將XML字符串還原為對象的過程。以下是一個簡單的示例:

using System;
using System.IO;
using System.Xml.Serialization;

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

class Program
{
    static void Main()
    {
        string xmlString = "<Person><FirstName>John</FirstName><LastName>Doe</LastName><Age>30</Age></Person>";

        XmlSerializer serializer = new XmlSerializer(typeof(Person));

        using (StringReader reader = new StringReader(xmlString))
        {
            Person person = (Person)serializer.Deserialize(reader);
            Console.WriteLine($"FirstName: {person.FirstName}, LastName: {person.LastName}, Age: {person.Age}");
        }
    }
}

在這個例子中,我們使用XmlSerializer類將XML字符串反序列化為Person對象。

注意:為了使序列化和反序列化正常工作,您需要為類添加[Serializable]屬性。這個屬性告訴序列化器該類可以被序列化。

0
上虞市| 宁南县| 安图县| 桃园市| 岐山县| 普安县| 建始县| 大城县| 六枝特区| 从江县| 阳泉市| 米易县| 天镇县| 英德市| 松原市| 桐柏县| 金川县| 芮城县| 南岸区| 永济市| 雷州市| 上杭县| 磐安县| 盐津县| 海口市| 腾冲县| 元谋县| 吉木萨尔县| 固安县| 吴桥县| 临猗县| 稷山县| 西宁市| 比如县| 驻马店市| 徐汇区| 广平县| 赤峰市| 竹山县| 林芝县| 蛟河市|