xml与DataSet的互转换类
点击次数:24 次 发布日期:2008-11-26 12:01:18 作者:源代码网
|
源代码网推荐 不过在实践中感觉封装一层后,使用起来还是蛮方便的。故再次重发。 源代码网推荐 源代码网推荐 using System; 源代码网推荐 using System.Collections.Generic; 源代码网推荐 using System.Text; 源代码网推荐 using System.Data; 源代码网推荐 using System.IO; 源代码网推荐 using System.Xml; 源代码网推荐 源代码网推荐 namespace XmlDesign 源代码网推荐 { 源代码网推荐 class XmlDatasetConvert 源代码网推荐 { 源代码网推荐 //将xml对象内容字符串转换为DataSet 源代码网推荐 public static DataSet ConvertXMLToDataSet(string xmlData) 源代码网推荐 { 源代码网推荐 StringReader stream = null; 源代码网推荐 XmlTextReader reader = null; 源代码网推荐 try 源代码网推荐 { 源代码网推荐 DataSet xmlDS = new DataSet(); 源代码网推荐 stream = new StringReader(xmlData); 源代码网推荐 //从stream装载到XmlTextReader 源代码网推荐 reader = new XmlTextReader(stream); 源代码网推荐 xmlDS.ReadXml(reader); 源代码网推荐 return xmlDS; 源代码网推荐 } 源代码网推荐 catch (System.Exception ex) 源代码网推荐 { 源代码网推荐 throw ex; 源代码网推荐 } 源代码网推荐 finally 源代码网推荐 { 源代码网推荐 if (reader != null) reader.Close(); 源代码网推荐 } 源代码网推荐 } 源代码网推荐 源代码网推荐 //将xml文件转换为DataSet 源代码网推荐 public static DataSet ConvertXMLFileToDataSet(string xmlFile) 源代码网推荐 { 源代码网推荐 StringReader stream = null; 源代码网推荐 XmlTextReader reader = null; 源代码网推荐 try 源代码网推荐 { 源代码网推荐 XmlDocument xmld = new XmlDocument(); 源代码网推荐 xmld.Load(xmlFile); 源代码网推荐 源代码网推荐 DataSet xmlDS = new DataSet(); 源代码网推荐 stream = new StringReader(xmld.InnerXml); 源代码网推荐 //从stream装载到XmlTextReader 源代码网推荐 reader = new XmlTextReader(stream); 源代码网推荐 xmlDS.ReadXml(reader); 源代码网推荐 //xmlDS.ReadXml(xmlFile); 源代码网推荐 return xmlDS; 源代码网推荐 } 源代码网推荐 catch (System.Exception ex) 源代码网推荐 { 源代码网推荐 throw ex; 源代码网推荐 } 源代码网推荐 finally 源代码网推荐 { 源代码网推荐 if (reader != null) reader.Close(); 源代码网推荐 } 源代码网推荐 } 源代码网推荐 源代码网推荐 //将DataSet转换为xml对象字符串 源代码网推荐 public static string ConvertDataSetToXML(DataSet xmlDS) 源代码网推荐 { 源代码网推荐 MemoryStream stream = null; 源代码网推荐 XmlTextWriter writer = null; 源代码网推荐 源代码网推荐 try 源代码网推荐 { 源代码网推荐 stream = new MemoryStream(); 源代码网推荐 //从stream装载到XmlTextReader 源代码网推荐 writer = new XmlTextWriter(stream, Encoding.Unicode); 源代码网推荐 源代码网推荐 //用WriteXml方法写入文件. 源代码网推荐 xmlDS.WriteXml(writer); 源代码网推荐 int count = (int)stream.Length; 源代码网推荐 byte[] arr = new byte[count]; 源代码网推荐 stream.Seek(0, SeekOrigin.Begin); 源代码网推荐 stream.Read(arr, 0, count); 源代码网推荐 源代码网推荐 UnicodeEncoding utf = new UnicodeEncoding(); 源代码网推荐 return utf.GetString(arr).Trim(); 源代码网推荐 } 源代码网推荐 catch (System.Exception ex) 源代码网推荐 { 源代码网推荐 throw ex; 源代码网推荐 } 源代码网推荐 finally 源代码网推荐 { 源代码网推荐 if (writer != null) writer.Close(); 源代码网推荐 } 源代码网推荐 } 源代码网推荐 源代码网推荐 //将DataSet转换为xml文件 源代码网推荐 public static void ConvertDataSetToXMLFile(DataSet xmlDS,string xmlFile) 源代码网推荐 { 源代码网推荐 MemoryStream stream = null; 源代码网推荐 XmlTextWriter writer = null; 源代码网推荐 源代码网推荐 try 源代码网推荐 { 源代码网推荐 stream = new MemoryStream(); 源代码网推荐 //从stream装载到XmlTextReader 源代码网推荐 writer = new XmlTextWriter(stream, Encoding.Unicode); 源代码网推荐 源代码网推荐 //用WriteXml方法写入文件. 源代码网推荐 xmlDS.WriteXml(writer); 源代码网推荐 int count = (int)stream.Length; 源代码网推荐 byte[] arr = new byte[count]; 源代码网推荐 stream.Seek(0, SeekOrigin.Begin); 源代码网推荐 stream.Read(arr, 0, count); 源代码网推荐 源代码网推荐 //返回Unicode编码的文本 源代码网推荐 UnicodeEncoding utf = new UnicodeEncoding(); 源代码网推荐 StreamWriter sw = new StreamWriter(xmlFile); 源代码网推荐 sw.WriteLine("<?xml version="1.0" encoding="utf-8"?>"); 源代码网推荐 sw.WriteLine(utf.GetString(arr).Trim()); 源代码网推荐 sw.Close(); 源代码网推荐 } 源代码网推荐 catch( System.Exception ex ) 源代码网推荐 { 源代码网推荐 throw ex; 源代码网推荐 } 源代码网推荐 finally 源代码网推荐 { 源代码网推荐 if (writer != null) writer.Close(); 源代码网推荐 } 源代码网推荐 } 源代码网推荐 源代码网推荐 } 源代码网推荐 } 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
