遍历XML文件添加到TreeView递归调用

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Linq;

namespace 遍历XML文件添加到TreeView递归调用
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //读取xml文件
            XDocument xdoc = XDocument.Load("11.xml");
            XElement root = xdoc.Root;//获取根元素
            TreeNode tn = tv.Nodes.Add(root.Name.ToString());//根元素的名字显示到控件上
            LoadXElement(root, tn);

        }

        private void LoadXElement(XElement root, TreeNode tn)
        {
            foreach(XElement item in root.Elements())//遍历根元素下所有的子元素
            {
                //判断当前的元素下是否还有元素
                if(item.Elements().Count()>0)
                {
                    TreeNode tn1 = tn.Nodes.Add(item.Name.ToString());
                    LoadXElement(item, tn1);//递归调用
                }
                else
                {
                    tn.Nodes.Add(item.Value);
                }
            }
        }
    }
}
时间: 2024-09-28 23:03:03

遍历XML文件添加到TreeView递归调用的相关文章

C# 遍历XML文件,添加,更新,删除节点

一,将XML文件添加到text文本中: 方法1,最简单方式 1 private void ReadFile() 2 3 { 4 5 string path = Application.StartupPath + @"/bookstore.xml"; 6 7 byte[] myByte; 8 9 //File.OpenRead(path); 10 11 myByte = File.ReadAllBytes(path); 12 13 this.textBox1.Text = string.

遍历XML文件

#encoding=utf-8 from xml.etree import ElementTree as ET #要找出所有人的年龄 per=ET.parse('d:\\1.xml') p=per.findall('./STATION') for x in p: print x.attrib print for oneper in p: #找出person节点 for child in oneper.getchildren(): #找出person节点的子节点 print child.tag,'

jquery递归遍历xml文件,形成ul-li序列,生成树结构(使用了treeview插件)

treeview插件从这里获得,下载的文件中有demo,看demo文件夹里面的index.html文件就差不多知道如何使用该控件了,在我做的项目里用到的部分代码截图如下(在引用下面的js文件前要先引用jquery文件): <div id="project_list1"> <ul id="browser" class="filetree"> <li><span class="folder"

XML文件的写,集合XML序列化(写)。XML文件的读,递归遍历

XML文件:必须要有一个节点.检验xml文件,可以用浏览器打开,能打开表示对,否则错. 处理方法: DOM:XmlDocument文档对象模型 Sax(事件驱动,XmlReader) XmlSerializer(序列化):可以序列化一个类,一个泛型集合. Linq to XML:主要用到类:Xelement XDocument XAttribute    using System.Xml.Linq; 写一个XML文件: 学校,班级,学生(性别,年龄,年龄) 1 namespace W_R_XML

struts.xml 文件添加DTD文件

在编辑struts.xml 文件时,“alt + /”无提示信息,需要在myeclipse 中添加消息头中的文件,步骤如下: 1. 选中该段复制 2. Preferences——>XML Catalog——>Add 3. 添加本地 .dtd文件路径 4. done... 如果不行关掉xml文件重启.

C# XML 给xml文件添加根节点

1 代码 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using System.Xml.Linq; 7 8 namespace ConsoleApplication8 9 { 10 class Program 11 { 12 static void Main(string[] args)

2.遍历XML即添加修改节点

1.xml <?xml version="1.0" encoding="utf-8" ?> <stories> <story ac="98"> <title>A House in Aungier Street</title> <author> <name>Sheridan le Fanu</name> <nationality>Irish&

递归遍历XML节点属性和属性值

public static XmlDocument FileMergedIntoXML(string strXmlPathPublic) { string strXmlPathPublic = string.Format(@"{0}file1.xml", AppDomain.CurrentDomain.BaseDirectory); XmlDocument docPublic = new XmlDocument(); XmlReaderSettings settings = new X

Android学习之XML数据的三种解析方式以及生成XML文件

首先,我得声明,本博客的思想主要参考了此博客:http://blog.csdn.net/liuhe688/article/details/6415593 不过代码我自己一句句敲的 好了,首先讲一下解析XML的三种方式:(恕我粘贴一下哈) SAX解析器: SAX(Simple API for XML)解析器是一种基于事件的解析器,它的核心是事件处理模式,主要是围绕着事件源以及事件处理器来工作的.当事件源产生事件后,调用事件处理器相应的处理方法,一个事件就可以得到处理.在事件源调用事件处理器中特定方