我有一个 XML 文件。根称为文档。文档有几个元素和节点。中间有 n 个documentFile元素。documentFile有一些节点。我想在最后一次出现documentFile之后添加 0 个或多个documentFile元素
所以我有类似的东西:
<document>
<someTags>
<documentFile>
<someSubTags>
<documentFile>
<someSubTags>
<someMoreTags>
</document>
我尝试使用以下代码:
GDataXMLDocument *tabsTree = [[GDataXMLDocument alloc]initWithData:tabsTreeData
encoding:NSUTF8StringEncoding
error:nil];
GDataXMLElement *rootElement = [tabsTree rootElement];
[rootElement addObject:[self createGDataXMLElementForDocumentFile:tab]];
正如预期的那样,这会将documentFile元素添加到 XML 的末尾。
我也试过
GDataXMLElement *rootElement = [tabsTree rootElement];
GDataXMLElement *documentFile = (GDataXMLElement *) [rootElement
elementsForName:kDocumentFile][0];
[documentFile addChild:[self createGDataXMLElementForDocumentFile:tab]];
这会将documentFile元素添加为第一次出现的documentFile的子元素,这也不足为奇。