xml之相互转换
一、xml转datatable
1、以下程序经常报错:"不应有 < xmlns=''>。" ,不知道什么原因。。。。
public static DataTable DeserializeDataTable(string xml) { StringReader reader = new StringReader(xml); XmlReader xmlReader = XmlReader.Create(reader); XmlSerializer serializer = new XmlSerializer(typeof(DataTable)); DataTable dt = serializer.Deserialize(xmlReader) as DataTable; return dt; }
2、找到简单的方法
public static DataTable DeserializeTable(string xml) { XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); TextReader reader = new StringReader(doc.InnerXml); DataSet ds = new DataSet(); ds.ReadXml(reader); if (ds.Tables.Count > 0) { return ds.Tables[0]; } else { return new DataTable(); } }
二、对象序列化为xml字符串
public static string SerializeXml<T>(T obj) { string result = ""; XmlSerializer serializer = new XmlSerializer(typeof(T)); using (MemoryStream stream = new MemoryStream()) { serializer.Serialize(stream, obj, Namespaces); result = Encoding.UTF8.GetString(stream.ToArray()); } return result; }

浙公网安备 33010602011771号