C# - 类型转换
XML 字符串 转 实体类
// 方法1 DataContractSerializer serializer = new DataContractSerializer(typeof(Message)); MemoryStream ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(respXML.ToCharArray())); var aa = (Message)serializer.ReadObject(ms); // 方法2 StringReader sr = new StringReader(respXML); XmlSerializer xmldes = new XmlSerializer(typeof(Message)); return (Message)xmldes.Deserialize(sr);
StreamReader reader reader = new StreamReader(filePath); XmlTextReader xmlReader = new XmlTextReader(reader); // 处理空格 xmlReader.WhitespaceHandling = WhitespaceHandling.All; XmlSerializer serializer = new XmlSerializer(typeof(FileGenerater)); g = (FileGenerater)serializer.Deserialize(xmlReader);
MemoryStream ms = new MemoryStream(); // XmlTextWriter textWriter = new XmlTextWriter(ms, Encoding.GetEncoding("UTF-8")); StreamWriter textWriter = new StreamWriter(ms, Encoding.GetEncoding("GBK")); textWriter.NewLine = ""; //处理回车 XmlSerializer serializer = new XmlSerializer(obj.GetType(), new XmlRootAttribute("MsgText")); serializer.Serialize(textWriter, obj); string xmlMessage = Encoding.GetEncoding("GBK").GetString(ms.GetBuffer()); //isSerializer = true; ms.Close(); textWriter.Close(); return xmlMessage;
参考: http://www.cnblogs.com/fish-li/archive/2013/05/05/3061816.html#_label0