procedure TForm1.Button1Click(Sender: TObject);
var
Root:IXMLNode;
ParentNode:IXMLNode;
ChildNode:IXMLNode;
begin
XMLDocument1.Active:=True;
XMLDocument1.Encoding:='GB2312';//设置字符集
Root:=XMLDocument1.AddChild('mp3文件列表');//建立根结点
ParentNode:=Root.AddChild('文件路径');
//根结点后添加文件路径结点
ParentNode.Attributes['作者']:='FlashDance';
ParentNode.Text:='D:/mp3/';
ChildNode:=ParentNode.AddChild('文件名');
//文件路径结点后添加一个文件名结点
ChildNode.Text:='FlashDance.mp3';
//设置文件名的值
//ChildNode:=ChildNode.NextSibling;
//ParentNode:=ParentNode.NextSibling;
XMLDocument1.SaveToFile(ChangeFileExt(Application.ExeName,'.xml'));
XMLDocument1.Active:=False;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Root:IXMLNode;
ParentNode:IXMLNode;
ChildNode:IXMLNode;
begin
XMLDocument1.Active:=True;
XMLDocument1.LoadFromFile(ChangeFileExt(Application.ExeName,'.xml'));
Root:=XMLDocument1.DocumentElement;//取XML文件的根结点,即mp3文件列表
ParentNode:=Root.ChildNodes.First;//使ParentNode指向文件路径结点
if (ParentNode.NodeName='文件路径') then
//判断是否为文件路径结点
begin
Memo1.Lines.Append(ParentNode.Attributes['作者']);
ChildNode:=ParentNode.ChildNodes.First;
Memo1.Lines.Append(ChildNode.Text);//D:/mp3/
//while (ChildNode<>nil)do
ChildNode:=ChildNode.NextSibling;
if ChildNode.NodeName='文件名' then
Memo1.Lines.Append(ChildNode.Text);
//ChildNode:=ChildNode.NextSibling;
//ParentNode:=ParentNode.NextSibling;
end;
XMLDocument1.Active:=False;
end;