我目前正在使用OmniXML单元在Delphi中操作我的XML文件。我设法从磁盘上的一个文件加载了XML内容,现在我想在特定的node元素下添加一个子节点。新的子节点也将具有“id”属性。不幸的是,鉴于OmniXML的文档非常糟糕,请告诉我如何做到这一点!我还想将新的XML保存到另一个文件中,您可以解释一下如何做到这一点吗?
谢谢,苏
发布于 2011-04-26 14:21:51
uses OmniXMLUtils;
childNode := EnsureNode(parentNode, 'id');不要使用原始的OmniXML (和OmniXMLUtils,这是一个改进,但仍然是非常基础的),您应该看看SimpleStorage和GpFluentXML。
发布于 2011-04-26 09:55:12
尝试如下所示:
var
iDoc, iNode: IXMLNode;
begin
XMLDocument1.LoadFrom...(...);
iDoc := XMLDocument1.DocumentElement;
// Find node where you want child added
// and add a new child
iNode := iDoc.ChildNodes[0].AddChild('NewNode');
iNode.Attributes['id'] := '2';
XMLDocument1.SaveTo...(...);
end;顺便说一句,使用免费的开源软件,然后抱怨它是不好的。:)如果您不喜欢文档,您可以随意购买商业产品,或者向开源软件的作者贡献,或者为文档贡献一些工作来改进它。
https://stackoverflow.com/questions/5784838
复制相似问题