asp.net XMLDocument获取第一个节点与删除root节点方法

xml技术来存储数据和文档是一件很容易的事情,.net framework 在它的命名空间system.xml 就提供了一种可以很方便的操作xml的类xmldocument,它使用起来非常容易,xmldocument 其实就是一个简单的树,下面我们就来看看关于 xmldocument获取第一个节点与删除root节点方法

#include "stdafx.h"

using namespace system;
using namespace system::xml;

void navigate(xmlnode ^node, int depth)
{
    if (node == nullptr)
        return;

    console::writeline(depth);
    console::writeline(node->nodetype.tostring());
    console::writeline(node->name);
    console::writeline(node->value);

    if (node->attributes != nullptr)
    {
        for (int i = 0; i < node->attributes->count; i++)
        {
            console::writeline(depth+1);
            console::writeline(node->attributes[i]->name);
            console::writeline(node->attributes[i]->value);
        }
    }
    navigate(node->firstchild, depth+1);
    navigate(node->nextsibling, depth);
}

void main()
{
    xmldocument ^doc = gcnew xmldocument();
    try
    {
        xmlreader ^reader = xmlreader::create("..monsters.xml");
        doc->load(reader);
        reader->close();
        xmlnode ^node = doc->firstchild;

       
        navigate(node, 0);
    }
    catch (exception ^e)
    {
        console::writeline("error occurred: {0}", e->message);
    }
}

删除root节点

#include "stdafx.h"

using namespace system;
using namespace system::xml;
using namespace system::xml::xpath;

void navigate(xpathnavigator ^nav, int depth)
{
    console::writeline(depth);
    console::writeline(nav->nodetype.tostring());
    console::writeline(nav->name);
    console::writeline(nav->value);

    if (nav->hasattributes)
    {
        nav->movetofirstattribute();
        do {
            console::writeline(nav->name);
            console::writeline(nav->value);
        }
        while(nav->movetonextattribute());
        nav->movetoparent();
    }

    if (nav->movetofirstchild())
    {
        navigate(nav, depth+1);
        nav->movetoparent();
    }
    if (nav->movetonext())
        navigate(nav, depth);
}

void main()
{
    xmldocument ^doc = gcnew xmldocument();
    try
    {
        doc->load("..monsters.xml");
        xpathnavigator ^nav = doc->createnavigator();
        nav->movetoroot();
        navigate(nav, 0);
    }
    catch (exception ^e)
    {
        console::writeline("error occurred: {0}", e->message);
    }
}

时间: 2024-10-27 01:19:10

asp.net XMLDocument获取第一个节点与删除root节点方法的相关文章

Javascript removeChild()删除节点及删除子节点的方法_javascript技巧

下面给大家介绍Javascript removeChild()删除节点的方法,具体详情如下所示: 在Javascript中,只提供了一种删除节点的方法:removeChild(). removeChild() 方法用来删除父节点的一个子节点. 语法:     parent.removeChild(thisNode) 参数说明:   参数 说明 thisNode 当前节点,即要删除的节点 parent 当前节点的父节点,即 thisNode.parentNode 例如,删除 id="demo&qu

GPFS 3.4中如何增加一个GPFS集群节点、删除一个节点等

GPFS 的全称为:General Parallel http://www.aliyun.com/zixun/aggregation/19352.html">File System,即通用并行文件系统.IBM GPFS 是一个可自由扩展的高性能并行文件系统,它主要有以下三个特点: 基于高可用的集群架构,可灵活扩展 支持并行的共享 磁盘访问方式,提供单一命名空间 针对并行 I/O 负载优化,提供极高的 I/O 处理能力 本文主要立足于 GPFS 配置的变更与性能的测试,因此 GPFS 的安装

JQuery删除DOM节点的方法_jquery

本文实例讲述了JQuery删除DOM节点的方法.分享给大家供大家参考.具体分析如下: 如果文档中某一个元素多余,那么应将其删除.JQuery提供了两种删除节点的方法,即remove()和empty(). HTML DOM结构如下: <p class="nm_p" title="欢迎访问" >欢迎访问</p> <ul class="nm_ul"> <li title='PHP编程'>简单易懂的PHP编

JavaScript实现节点的删除与序号重建实例_javascript技巧

本文实例讲述了JavaScript实现节点的删除与序号重建.分享给大家供大家参考.具体如下: 这里演示JavaScript节点的删除与重建方法,删除节点后,会自动重新建立节点,序号自动排列,比如删除当前的第3条数据后,第4条的序号会智能变为3,以此类推,保证序号不乱. 运行效果如下图所示: 删除前: 删除后: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww

asp.net 正则替换html标签与删除指定字符方法

asp教程.net 正则替换html标签与删除指定字符方法,使用了正则表达式进行规则过滤,由于html标记都是基于<>这种格式,而且还有类似 这样的符号,所以分了2次处理将字符串处理为无html格式的字符串.   public string NoHtml(string html) {     string StrNohtml = System.Text.RegularExpressions.Regex.Replace(html, "<[^>]+>", &q

redis cluster中添加删除重分配节点例子

redis cluster配置好,并运行一段时间后,我们想添加节点,或者删除节点,该怎么办呢. 一,redis cluster命令行     //集群(cluster)  CLUSTER INFO 打印集群的信息  CLUSTER NODES 列出集群当前已知的所有节点(node),以及这些节点的相关信息.     //节点(node)  CLUSTER MEET <ip> <port> 将 ip 和 port 所指定的节点添加到集群当中,让它成为集群的一份子.  CLUSTER

ztree获取第一个子节点的id与所有节点ID的例子

zTree.getSelectedNodes()[0]是获取选中的第一个节点 getNodeByTId 概述[ 依赖 jquery.ztree.core 核心 js ] 根据 zTree 的唯一标识 tId 快速获取节点 JSON 数据对象 通过内部的 cache 获取,不需要遍历节点. 请通过 zTree 对象执行此方法. Function 参数说明 tIdString 节点在 zTree 内的唯一标识 tId 返回值JSON tId 对应的节点 JSON 数据对象 如无结果,返回 null

ASP.NET XmlDocument类详解

  这篇文章主要介绍了ASP.NET XmlDocument类详解,本文讲解了XmlDocument的属性.XmlDocument的方法.XmlDocument的事件.XmlDocument的使用实例等内容,需要的朋友可以参考下 XmlDocument类是.NET框架的DOC解析器.XmlDocument将XML视为树状结构,它装载XML文档,并在内存中构建该文档的树状结构.下面来看下XmlDocument提供了哪些功能. 一.属性: Attributes 获取一个 XmlAttributeCo

ASP.NET XmlDocument类详解_实用技巧

XmlDocument类是.NET框架的DOC解析器.XmlDocument将XML视为树状结构,它装载XML文档,并在内存中构建该文档的树状结构.下面来看下XmlDocument提供了哪些功能. 一.属性: Attributes 获取一个 XmlAttributeCollection,它包含该节点的属性. (继承自 XmlNode.) BaseURI     获取当前节点的基 URI. (重写 XmlNode..::.BaseURI.) ChildNodes 获取节点的所有子节点. (继承自