使用VTD-XML更新属性值



给定属性和一个新值的xpath,我希望将属性值更新为新值。

我在此处遵循了示例:http://vtd-xml.sourceforge.net/codesample/cs7.html并提出以下内容:

autoPilot.selectXPath(xpath);
modifier.updateToken(vtdNav.getAttrVal(vtdNav.toString(autoPilot.evalXPath())), newContent);

...我的测试都过去了正确的事情。

您的代码可以正常工作...假设您将调用modifier.output((。

但不是最佳...

此语句

modifier.updateToken(vtdNav.getAttrVal(vtdNav.toString(autoPilot.evalXPath())), newContent);

可以写为

modifier.updateToken(autoPilot.evalXPath()+1, newContent);

因为如果属性名称具有i(!= - 1(的索引值,则属性值始终为i 1 ...,因为attr val立即遵循一个atter名称。不需要条件检查。

最新更新