Xml转化为DataTable
2015-06-04 16:14
375 查看
/// <summary> /// XML转换为DataTable /// </summary> /// <param name="fileName">文件路径</param> /// <param name="tagName">节点路径</param> /// <returns>返回DataTable</returns> public static DataTable XmlToDataTable(string fileName, string tagName) { XmlDocument Xmldoc = new XmlDocument(); Xmldoc.Load(fileName); XmlNodeList xlist = Xmldoc.SelectNodes(tagName); DataTable dt = new DataTable(); DataRow dr; for (int i = 0; i < xlist.Count; i++) { dr = dt.NewRow(); XmlElement xe = (XmlElement)xlist.Item(i); for (int j = 0; j < xe.Attributes.Count; j++) { if (!dt.Columns.Contains("@" + xe.Attributes[j].Name)) { dt.Columns.Add("@" + xe.Attributes[j].Name); } dr["@" + xe.Attributes[j].Name] = xe.Attributes[j].Value; } for (int j = 0; j < xe.ChildNodes.Count; j++) { if (!dt.Columns.Contains(xe.ChildNodes.Item(j).Name)) { dt.Columns.Add(xe.ChildNodes.Item(j).Name); } dr[xe.ChildNodes.Item(j).Name] = xe.ChildNodes.Item(j).InnerText; } dt.Rows.Add(dr); } return dt; }
相关文章推荐
- 使用Chrome测试页面响应性
- 利用百度SDK进行城市定位
- GRE填空中介词的常用搭配
- iOS应用架构谈 view层的组织和调用方案
- easyUI 1.3.2 dataGrid动态绑定列名和数据
- 黑马程序员_内存管理小结
- 修改 mysql 的字符编码
- Reverse Nodes in k-Group
- C# Lambda表达式
- Linux Shell常用技巧
- unity log写入文件
- 从零开始学习H5应用(1)——V1.0版,简单页面滑动切换效果
- Linux驱动开发必看详解神秘内核(完全转载)
- 新手易犯的典型缺陷--C#
- RTMP流媒体协议
- 指针高级(2)
- ECShop在PHP 5.4以上版本报错的解决
- ViewFlipper
- Redis3.0.1集群环境搭建
- 使用Qt Quick设计器