对象的序列化和反序列化 itprobie

将对象序列化成xml字符串,并将xml字符串反序列化成对象

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 
 6 using System.IO;
 7 using System.Xml;
 8 using System.Xml.Serialization;
 9 
10 namespace XYL.TechnicalSupervision.Utilities
11 {
12     public class DotNetXmlSerilize
13     {
14         public static string Serializer(object obj)
15         {
16             XmlSerializer serializer = new XmlSerializer(obj.GetType());
17             MemoryStream memoryStream = new MemoryStream();
18             XmlTextWriter xml = new XmlTextWriter(memoryStream, Encoding.UTF8);
19             serializer.Serialize(xml, obj);
20             return Encoding.UTF8.GetString(memoryStream.ToArray());
21         }
22 
23         public static T DeSerializer<T>(string xmlStr)
24         {
25             XmlSerializer serializer = new XmlSerializer(typeof(T));
26             byte[] bytes = Encoding.UTF8.GetBytes(xmlStr);
27             MemoryStream memoryStream = new MemoryStream(bytes);
28             XmlTextReader xml = new XmlTextReader(memoryStream);
29             return (T)serializer.Deserialize(xml);
30         }
31     }
32 }
原文地址:https://www.cnblogs.com/guohu/p/2691014.html