将自定义对象序列化为XML字符串

#region Serialize
       
/// <summary>
       
/// 将自定义对象序列化为XML字符串
       
/// </summary>
       
/// <param name="myClass">自定义对象实体</param>
       
/// <returns>序列化后的XML字符串</returns>

        public static string SerializeToXml(object myClass)
       
{
           
if(myClass != null)
           
{
                XmlSerializer xs
= new XmlSerializer(myClass.GetType());
           
MemoryStream stream
= new MemoryStream();
XmlTextWriter writer
= new XmlTextWriter(stream, Encoding.UTF8);
                writer.Formatting
= Formatting.None;//缩进
                xs.Serialize(writer, myClass);

                stream.Position
= 0;
                StringBuilder sb
= new StringBuilder();
               
using(StreamReader reader = new StreamReader(stream, Encoding.UTF8))
               
{
                   
string line;
                   
while((line = reader.ReadLine()) != null)
                   
{
                        sb.Append(line);
                    }

                    reader.Close();
                }

                writer.Close();
               
return sb.ToString();
            }

           
return string.Empty;
        }


       
#endregion

posted on 2007-05-26 22:30  书生  阅读(846)  评论(1编辑  收藏  举报

导航