VS 2003的序列化

最近做一个维护项目,是用VS2003开发的,我晕。现在都用VS2008吧。

前几天遇到一个小问题,就是对象序列化的,要把一个类序列化成一个xml字符串,在2005里面我们可以用XmlWriter,而在2003里面,貌似不行。没办法,自己摸索先,终于找到了一个办法,如下代码:

  public string Serialize(object obj,Type t)   {    UTF8Encoding utf8Encoding = new UTF8Encoding(false);    byte[] utf8EncodedData = null;    XmlSerializer serializer = new XmlSerializer(t);    using (MemoryStream memStrm = new MemoryStream())    {     XmlTextWriter xmlSink = new XmlTextWriter(memStrm, utf8Encoding);     serializer.Serialize(xmlSink, obj);     xmlSink.BaseStream.Position = 0;     utf8EncodedData = new byte[xmlSink.BaseStream.Length];     xmlSink.BaseStream.Read(utf8EncodedData, 0, (int)xmlSink.BaseStream.Length);    }    if (null != utf8EncodedData && 0 < utf8EncodedData.Length)    {     string text = utf8Encoding.GetString(utf8EncodedData);     return text;    }    return string.Empty;   }

 

感觉还可以。嘿嘿

你可能感兴趣的:(VS 2003的序列化)