如何用Delphi打开一个XML文档并在文档中加入新的内容

 我来答
lin257257
2012-02-24 · TA获得超过424个赞
知道小有建树答主
回答量:331
采纳率:100%
帮助的人:181万
展开全部
uses msxmldom, XMLDoc, XMLIntf;
// 注意节点名 属性名大小写
procedure TForm1.Button1Click(Sender: TObject);
var
// Xml 容器
XMLDoc: TXMLDocument;
IXMLDoc: IXMLDocument;
// Xml节点
Root_Node: IXMLNode;
Parent_Node: IXMLNode;
Child_Node: IXMLNode;
begin
XMLDoc:= TXMLDocument.Create(nil);
IXMLDoc:= XMLDoc;
try
XMLDoc.LoadFromFile('d:\Test.xml');
XMLDoc.Active:= True;
XMLDoc.Encoding:= 'UTF-8';
Root_Node:= XMLDoc.DocumentElement;
if Root_Node = nil then
Exit;
if Root_Node.NodeName <> 'map' then
Exit;

Parent_Node:= Root_Node.ChildNodes.First;
if Parent_Node = nil then
Exit;
if Parent_Node.NodeName = 'point' then
begin
Memo1.Lines.Add('point type = "' + Parent_Node.Attributes['type'] + '"');
Child_Node:= Parent_Node.ChildNodes.First;
while Child_Node <> nil do
begin
Memo1.Lines.Add(Child_Node.NodeName +
' ' + VarToStr(Child_Node.NodeValue) +
' x = ' + VarToStr(Child_Node.Attributes['X']) +
' y = ' + VarToStr(Child_Node.Attributes['Y']));
Child_Node:= Child_Node.NextSibling;
end;
end;
finally
IXMLDOC:= nil;
XMLDoc:= nil;
XMLDoc.Free;
end;
end;
用这个试试
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式