黄聪: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/del/archive/2008/01/03/1024681.html

原文地址:https://www.cnblogs.com/huangcong/p/1809925.html