zoukankan      html  css  js  c++  java
  • XML SelectSingleNode的使用 根据节点属性获取该节点

    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

  • 相关阅读:
    shell:echo -e "33字体颜色"
    Linux配置swap
    软工2017第三周作业——词频效能分析
    ffmpeg——关于视频压缩
    软件工程2017第一次作业——随笔汇总
    软件工程2017第一次作业——随笔二
    软件工程2017第一次作业——随笔一
    02-分支结构
    iOS中如何知道app版本已更新
    socket编程中客户端常用函数 以及简单实现
  • 原文地址:https://www.cnblogs.com/findumars/p/5285905.html
Copyright © 2011-2022 走看看