Delphi 中的 XMLDocument 类详解(8) - 添加与删除节点

简介:
unit  Unit1;

interface

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

type
TForm1 
=   class (TForm)
XMLDocument1: TXMLDocument;
Memo1: TMemo;
Button1: TButton;
Button2: TButton;
procedure  FormCreate(Sender: TObject);
procedure  Button1Click(Sender: TObject);
procedure  Button2Click(Sender: TObject);
private
{  Private declarations  }
public
{  Public declarations  }
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
newNode, newNodeAdd: IXMLNode;
begin
newNode :
=  XMLDocument1.DocumentElement.AddChild( ' 人员 ' );
newNode.Attributes[
' 职务 ' ] : =   ' 秘书 ' ;

newNodeAdd :
=  newNode.AddChild( ' 姓名 ' );
newNodeAdd.Text :
=   ' 小翠 ' ;

newNodeAdd :
=  newNode.AddChild( ' 性别 ' );
newNodeAdd.Text :
=   ' ' ;

Memo1.Lines :
=  XMLDocument1.XML;  { 查看 }
{ 会在尾部增加:
<人员 职务="秘书"><姓名>小翠</姓名><性别>女</性别></人员>
}
end ;


// 删除
procedure  TForm1.Button2Click(Sender: TObject);
var
nodeList: IXMLNodeList;
begin
nodeList :
=  XMLDocument1.DocumentElement.ChildNodes;
nodeList.Delete(nodeList.Count
- 1 );  { 删除最后一条 }

Memo1.Lines :
=  XMLDocument1.XML;  { 查看 }
end ;

end .
复制代码



本文转自黄聪博客园博客,原文链接:http://www.cnblogs.com/huangcong/archive/2010/08/27/1809925.html,如需转载请自行联系原作者
相关文章