VTD-XML
Xpath 式でいくつかの XML ファイルを解析するために使用していますが、次のように表示されました。xml ツリーからノードのインデックスを知る必要があります。
count(//ds[name='cpu1']/preceding-sibling::*)+1
必要なインデックスを提供します - 私の質問は次のとおりです: VTD-XML を使用している限り (高速であるため)、この種の式を 内で使用する可能性はありますVTD-XML
か? 指定された式を使用すると、XpathParseException が発生します。
私のxmlは次のようになります:
<?xml version="1.0" encoding="UTF-8"?>
<rrd>
<version>0003</version>
<step>5</step>
<lastupdate>1290585118</lastupdate>
<ds>
<name>cpu1</name>
<type>DERIVE</type>
<minimal_heartbeat>300.0000</minimal_heartbeat>
<min>0.0</min>
<max>1.0000</max>
<last_ds>69375.6708</last_ds>
<value>0.0001</value>
<unknown_sec>0</unknown_sec>
</ds>
<ds>
<name>cpu0</name>
<type>DERIVE</type>
<minimal_heartbeat>300.0000</minimal_heartbeat>
<min>0.0</min>
<max>1.0000</max>
<last_ds>69375.6708</last_ds>
<value>0.0001</value>
<unknown_sec>0</unknown_sec>
</ds>
...