unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, msxml,StdCtrls;

type
  TForm1 = class(TForm)
    btn1: TButton;
    XMLDocument1: TXMLDocument;
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btn1Click(Sender: TObject);

var
  noderef: IXMLDOMNodeRef;
  root: IXMLDOMNode;
  Node: IXMLDOMNode;

begin
  XMLDocument1.LoadFromFile('test.xml');

XMLDocument1.Active := True;
  noderef := XMLDocument1.DocumentElement.DOMNode as IXMLDOMNodeRef;
  root := noderef.GetXMLDOMNode; // 获取跟节点
  Node := root.selectSingleNode('ItemList/Item[@name="name2"]'); // 根据路径的属性值获取节点

ShowMessage(Node.Attributes.getnameditem('title').Text); // title2

Node.Attributes.getnameditem('title').Text:='hello'; // <Item name="name2" title="title2"/>  =>  <Item name="name2" title="hello"/> 
  XMLDocument1.SaveToFile('test.xml');
end;

end.

test.xml文档:

<?xml version="1.0" encoding="utf-8"?>
<Test>
    <ItemList>
        <Item name="name1" title="title1"></Item>
        <Item name="name2" title="title2"/>
    </ItemList>
</Test>

http://blog.csdn.net/henreash/article/details/16827007

XML SelectSingleNode的使用 根据节点属性获取该节点的更多相关文章

  1. Javascript进阶篇——(DOM—节点---属性、访问节点)—笔记整理

    节点属性在文档对象模型 (DOM) 中,每个节点都是一个对象.DOM 节点有三个重要的属性 : 1. nodeName : 节点的名称 2. nodeValue :节点的值 3. nodeType : ...

  2. 使用DOM解析XML文件,、读取xml文件、保存xml、增加节点、修改节点属性、删除节点

    使用的xml文件 <?xml version="1.0" encoding="GB2312" ?> <PhoneInfo> <Br ...

  3. 解析xml节点属性及子节点内容

    xml样例 <microNearlyThreeYearsOverdueInfo subReportType="13204" subReportTypeCost="9 ...

  4. Winform中双击DevExpress的TreeList的树形节点怎样获取当前节点

    场景 DevExpress的TreeList怎样设置数据源,从实例入手: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10254 ...

  5. 怎样通过name属性获取元素节点集合

    使用 document.getElementsByName(); document.getElementsByName("userInfo") instanceof NodeLis ...

  6. easyui tree获取直接子节点而不获取孙子节点方法

    $(node.target.nextElementSibling).children().each(function(index,ele){ if(checked){ $('#rcDimTreeRow ...

  7. DOM节点属性

    节点属性 在文档对象模型 (DOM) 中,每个节点都是一个对象.DOM 节点有三个重要的属性 : 1. nodeName : 节点的名称 2. nodeValue :节点的值 3. nodeType ...

  8. 原生Js获取某个节点后面的第一个标签

    nextSlbling属性 获取某个节点后面的第一个节点(可能是标签 文本) 判断获取的节点是否为标签节点还是文本节点 window.onload=function(){ var pagecount= ...

  9. js总结33 :javascript-DOM节点属性

    1 设置节点属性三个方法: 获取:getAttribute(名称) 设置:setAttribute(名称, 值) 删除:removeAttribute(名称) 举个例子: <!DOCTYPE h ...

随机推荐

  1. 05-UIKit(UITableViewController)

    目录: 一.UITableViewController(表视图控制器) 二.委托协议 三.tableview工作过程(三问一响应) 四.UITableViewCell 回到顶部 一.UITableVi ...

  2. js动态向页面中添加表格

    我们在实际开发中经常会想要实现如下情况: 点击某个按钮,然后动态的网页面里面添加一个表格或者一行,这个更加灵活方便.但是实现起来肯定不能像在页面里面直接写标签来的容易,以下是我项目中的代码,拿过来分享 ...

  3. Multiple bindings were found on the class path(转)

    Multiple bindings were found on the class path SLF4J API is designed to bind with one and only one u ...

  4. Servlet的学习之Filter过滤器技术(1)

    本篇将讲诉Servlet中一项非常重要的技术,Filter过滤器技术.通过过滤器,可以对来自客户端的请求进行拦截,进行预处理或者对最终响应给客户端的数据进行处理后再输出. 要想使用Filter过滤器, ...

  5. 基于visual Studio2013解决面试题之1408桶排序

     题目

  6. java基础之&amp; 和 &amp;&amp; 的差别

    &和&&都能够用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,仅仅要有一方为false,则结果为false. ...

  7. Qt递归拷贝和删除目录

    最近在翻看项目代码时,看到了这两个函数,想到这个功能十分常用,因此拿出来与大家分享,希望对大家有用.几点说明: 1.记得当初写代码那会,是参考了网上的帖子写的,做了一点小修改.因此代码源于网络. 2. ...

  8. cocos2d-x游戏开发(十五)游戏加载动画loading界面

    个人原创,欢迎转载:http://blog.csdn.net/dawn_moon/article/details/11478885 这个资源加载的loading界面demo是在玩客网做逆转三国的时候随 ...

  9. 14.10.3 InnoDB Checkpoints InnoDB 检查点:

    14.10.3 InnoDB Checkpoints InnoDB 检查点: 你的log files 变的很大可能会降低磁盘性能在checkpointing的时候, 它通常设置设置log files总 ...

  10. HDU 4350 Card

    打表找规律,比赛应付了一下,其实还可以把内存再优化一半掉,下面的0都是手动填充的,可以优化掉 题意: T个测试数据 下面52个数字表示 从栈顶到栈底的52个数 n l r表示 从栈顶下数 [l,r] ...