• asp.net 遍历XML文件节点信息


    XML文件,随便,下面是个示例:
    <?xml version="1.0" encoding="utf-8" ?>
    <WebSites>
    <WebSite>
    <WebTitle>爱178影院</WebTitle>
    <WebUrl>http://www.ai178.com</WebUrl>
    <WebContent value="精彩影视网">带给您最佳的视觉欣赏效益</WebContent>
    </WebSite>
    </WebSites>
    遍历方法:
    /// <summary>
    /// 遍历XML文件,写在页面上
    /// </summary>
    /// <param name="node"></param>
    public void ShowNode(XmlNode node)
    {
    //输出节点类型
    Response.Write("<li>节点类型:"+node.NodeType.ToString()+"</li><br>");
    //判断节点是否有子节点,当无子节点时
    if (!node.HasChildNodes)
    {
    //如果没有子节点输出该节点所有元素值
    Response.Write("元素值: "+node.InnerText+"<br>");
    }
    //当当前节点类型为元素时
    if(node.NodeType==XmlNodeType.Element)
    {
    //元素节点有属性值时
    if (node.Attributes.Count > 0)
    {
    for(int i=0;i<node.Attributes.Count;i++)
    {
    //输出节点元素属性名称和属性值
    Response.Write("属性:"+node.Attributes[i].LocalName+" = "+node.Attributes[i].Value+"<br>");
    }
    }
    }
    //判断节点是否有子节点,当有节点时
    if(node.HasChildNodes)
    {
    for (int i = 0; i < node.ChildNodes.Count; i++)
    {
    //递归调用
    ShowNode(node.ChildNodes[i]);
    }
    }
    }

    调用方法:

    XmlDocument xmldoc = new XmlDocument();
    //加载XML文档
    xmldoc.Load(MapPath("WebSite.xml"));

    //遍历XML的所有节点,包括XML的声名,如:<?xml version="1.0" encoding="utf-8"?>
    ShowNode(xmldoc);
    ////遍历XML的第一个子级,即XML的声名,如:<?xml version="1.0" encoding="utf-8"?>
    //ShowNode(xmldoc.FirstChild);
    ////遍历XML的最后一个子级,即XML的元素主体,因为XML只能且必须有一个根元素,所以,此为遍历XML的除声名外的部份
    //ShowNode(xmldoc.LastChild);
    //传入根节点
    // ShowNode(xmldoc.DocumentElement);
  • 相关阅读:
    一种动态部署JBoss应用的简单方法
    虚拟机启动的一个Bat文件(启动虚拟机.bat)
    Windows 设置了文件夹共享,删除默认Everyone共享,设置其他用户共享之后打不开的问题
    命令按钮怎么直接指定带参数的宏?
    bat延时
    wrapper.java.additional
    win7下vc6.0的安装
    UVA10391
    UVALive3708
    C++红黑树(类模板实现)
  • 原文地址:https://www.cnblogs.com/dajiang02/p/1887250.html
Copyright © 2020-2023  润新知