Exemplo n.º 1
0
    /// <summary>
    /// 演示XmlSerializer的序列化和反序列化
    /// </summary>
    void ShowXmlSerializer()
    {
        var xmlSerializerObject = new API.XmlSerializerObject {
            ID = Guid.NewGuid(), Name = "XmlSerializer", Age = 28, Time = DateTime.Now
        };

        var serializer = new System.Xml.Serialization.XmlSerializer(typeof(API.XmlSerializerObject));

        // 序列化
        var ms = new MemoryStream();

        serializer.Serialize(ms, xmlSerializerObject);

        ms.Position = 0;
        var sr  = new StreamReader(ms);
        var str = sr.ReadToEnd();

        txtXmlSerializer.Text = str;


        // 反序列化
        var buffer = System.Text.Encoding.UTF8.GetBytes(str);
        var ms2    = new MemoryStream(buffer);
        var xmlSerializerObject2 = serializer.Deserialize(ms2) as API.XmlSerializerObject;

        lblXmlSerializer.Text = xmlSerializerObject2.Name;
    }
Exemplo n.º 2
0
    /// <summary>
    /// 演示XmlSerializer的序列化和反序列化
    /// </summary>
    void ShowXmlSerializer()
    {
        var xmlSerializerObject = new API.XmlSerializerObject { ID = Guid.NewGuid(), Name = "XmlSerializer", Age = 28, Time = DateTime.Now };

        var serializer = new System.Xml.Serialization.XmlSerializer(typeof(API.XmlSerializerObject));

        // 序列化
        var ms = new MemoryStream();

        serializer.Serialize(ms, xmlSerializerObject);

        ms.Position = 0;
        var sr = new StreamReader(ms);
        var str = sr.ReadToEnd();
        txtXmlSerializer.Text = str;

        // 反序列化
        var buffer = System.Text.Encoding.UTF8.GetBytes(str);
        var ms2 = new MemoryStream(buffer);
        var xmlSerializerObject2 = serializer.Deserialize(ms2) as API.XmlSerializerObject;
        lblXmlSerializer.Text = xmlSerializerObject2.Name;
    }