例如我有这个xml。我需要使用val
foo
的参数id="two"
的值
<top>
<sub id="one">
<foo id="two" val="bar" />
sometext
</sub>
</top>
这个查询(使用Qt QXmlQuery):
doc('test.xml')/top/sub[@id='one']/foo[@id='two']/<p>{@val}</p>
我收到<p val="bar"/>
,,但我只需要文本“bar”而没有任何标记。
我尝试删除<p>
和</p>
并接收syntax error, unexpected {
如何在没有任何标签的情况下获取参数值?
答案 0 :(得分:2)
如果您尝试仅序列化某个属性,则会出现错误。您可能最好只检索属性的值:
doc('test.xml')/top/sub[@id='one']/foo[@id='two']/@val/data(.)
答案 1 :(得分:1)
对不起有点晚了... 试试
data(doc('/db/test/test.xml')/top/sub[@id='one']/foo[@id='two']/@val)
只返回属性的文本值
答案 2 :(得分:0)
doc('test.xml')/top/sub[@id='one']/foo[@id='two']/@val