使用XPath创建XML节点
Create XML nodes using XPath
是否可以使用XPath
创建XML
节点?
假设我得到了以下XML:
<data>
<someValue1></someValue2>
<someValue2></someValue2>
<someArray>
<val></val>
<val></val>
<val></val>
</someArray>
</data>
我要做的是使用XPath
(例如/data/someValue1
)在XML
中获取一个节点,并设置该节点的值。这当然很容易用任何支持XML
+XPath
的语言和框架来实现。
但是当我的XPath
表达式指向一个不存在的节点时,我想以某种方式创建这个节点即使XPath
的表达更复杂(例如/data/someArray/val[5]
)。
这种自动节点创建充其量应该得到某些库的支持。有没有一种简单的方法来实现我想要实现的目标?目前,我正在使用C++和Qt以及QXmlQuery
类。
是否可以使用XPath创建XML节点?
不,不是。XPath只能选择现有节点。
如果要创建新节点,则需要XSLT或XQuery。
但即便如此,创建一个满足给定路径(如/a/b/c/foo[5]
)的节点也并非易事,也不是语言可以自动完成的事情。
相关文章:
- 如何在pugixml中获取节点的内部XML
- C++RapidXml-使用first_node()遍历以修改XML文件中节点的值
- 删除 XML 文件中的子节点C++
- 使用 RapidXML 更新C++中的 XML 节点和属性值
- 按属性搜索和提取 XML 节点
- 尝试使用 RapidXML 将唯一的 XML 属性追加到节点
- C++/RapidXML:编辑节点并写入新的 XML 文件没有更新的节点
- c++ 无法从 XML 获取所有子节点
- 如何在每个XML节点上添加线路断裂
- 快速XML遍历节点
- 使用boost::property_tree编写CDATA XML节点
- 如何在QT中获取XML文件的最后一个节点
- 如何使用libxml2从C 中的XML文件中检索节点和特定元素字符串而不使用XPATH
- 如何将XML节点数据转换为QT中的字符串
- 通过Pugixml C 提取XML文件中的节点的所有节点
- 如何使用XPath使用libxml2从C 中的XML文件中检索节点和特定元素字符串
- XML从UnicodeString创建CData节点时出现无效字符
- 忽略GSOAP中的未知XML元素节点
- 如何将XML文件拆分为多个XML,以便每个新文件只包含原始文件中的一个文本节点
- C++等价于从C#中选择XML节点