您的位置:首页 > 其它

xml文件轉化為datatable

2016-04-14 11:03 405 查看
asp.net 新建xml文件,代碼如附件:

<?xml version="1.0" encoding="utf-8" ?>
<content>
<information>
<name>Annie</name>
<sex>Female</sex>
<Age>25</Age>
</information>
<information>
<name>Tom</name>
<sex>male</sex>
<Age>28</Age>
</information>
<information>
<name>Lily</name>
<sex>Female</sex>
<Age>22</Age>
</information>
</content>

後台寫轉換方法

private static DataTable xmlToDataTable(string xml)
{
DataTable dt = new DataTable();
XmlDocument doc = new XmlDocument();
doc.Load(xml);
foreach(XmlNode x in doc.FirstChild.FirstChild.ChildNodes)
{
dt.Columns.Add(x.Name,typeof(string));
}
foreach(XmlNode xx in doc.FirstChild.ChildNodes)
{
DataRow dr=dt.NewRow();
foreach(XmlNode x in xx.ChildNodes)
{
dr[x.Name]=x.InnerText;
}
dt.Rows.Add(dr);
}
return dt;
}

在調用之後出現錯誤,root=null,doc裡面的資料是正確的,但是doc.firstchilld抓的是第一行宣告列。

之後將xml文件中第一行宣告去掉,則不再報錯。想知道為什麼會把宣告當成根元素去抓?

C#後台邏輯參考網站:http://yinzhihua2008.blog.163.com/blog/static/794306720114281310769/




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xml datatable