zoukankan      html  css  js  c++  java
  • Delphi 中的 XMLDocument 类详解(19) NodeValue 与 NodeName 的读写区别

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        XMLDocument1: TXMLDocument;
        procedure FormCreate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      XMLDocument1.LoadFromFile('c:\temp\test.xml');
      {必须用万一提供的 xml 测试文件, 才能有相同的返回值}
    end;
    
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
      node: IXMLNode;
    begin
      node := XMLDocument1.DocumentElement;
    
      node := node.ChildNodes[0]; {现在的 node 指向了第一个人员节点}
    
      //属性值: NodeValue 是可读写的
      ShowMessage(node.AttributeNodes[0].NodeValue); {科长}
      node.AttributeNodes[0].NodeValue := '正科长';
      ShowMessage(node.AttributeNodes[0].NodeValue); {正科长}
    
      //属性名: NodeName 是只读的
      ShowMessage(node.AttributeNodes[0].NodeName);  {职务}
      //node.AttributeNodes[0].NodeName := 'xxx';    {如果企图给属性名赋值会出错}
    
    
    
      node := node.ChildNodes[0]; {现在的 node 指向了第一个人员"张三"的姓名节点}
    
      //节点值: NodeValue 是可读写的
      ShowMessage(node.NodeValue); {张三}
      node.NodeValue := '张老三';
      ShowMessage(node.NodeValue); {张老三}
    
      //节点名: NodeName 是只读的
      ShowMessage(node.NodeName);  {姓名}
      //node.NodeName := 'xxx';    {如果企图给节点名赋值会出错}
    end;
    
    end.
    
  • 相关阅读:
    《.NET深入体验与实战精要》读书体会
    为什么周易中有64卦?
    16进制与8进制之间的快速转码
    3种夸克有多少组合?
    分辨率宽高和为整千?
    abt DVD
    为什么有20种氨基酸?
    HD与BD次时代之战!
    [转载]Java一些基础问题
    [转载]Java环境变量配置
  • 原文地址:https://www.cnblogs.com/del/p/1029056.html
Copyright © 2011-2022 走看看