DataTable xml 互相转换

 

 

//测试方法

public static DataTable Test()
{
string savePath = System.AppDomain.CurrentDomain.BaseDirectory;
string path="";
path=savePath+"/manager/wenjian.xml";
XmlDocument doc = new XmlDocument();
doc.Load(path);
string str = doc.InnerXml;
DataTable dt = XmlToDataTable(str);
return dt;
}
//xml 转DataTable
public static DataTable XmlToDataTable(string xmlStr)
{
if (!string.IsNullOrEmpty(xmlStr))
{
StringReader StrStream = null;
XmlTextReader Xmlrdr = null;
try
{
DataSet ds = new DataSet();

StrStream = new StringReader(xmlStr);

Xmlrdr = new XmlTextReader(StrStream);

ds.ReadXml(Xmlrdr);
return ds.Tables[0];
}
catch (Exception e)
{
return null;
}
finally
{

if (Xmlrdr != null)
{
Xmlrdr.Close();
StrStream.Close();
StrStream.Dispose();
}
}
}
return null;
}

//DataTable 转 xml
public static void DataTableToXml(DataTable vTable)
{
string savePath = System.AppDomain.CurrentDomain.BaseDirectory;
if (!Directory.Exists(savePath))
{
Directory.CreateDirectory(savePath);
}
string xml = savePath + @"\my.xml";

if (File.Exists(xml))
{
File.Delete(xml);
}
vTable.WriteXml(savePath + @"\my.xml");
}

posted on 2019-01-06 18:19  gfbppy  阅读(127)  评论(0编辑  收藏  举报

导航