我正在尝试找出最好的翻译方法:
<Source><properties>
....
<name>wer</name>
<delay>
<type>Deterministic</type>
<parameters length="1">
<param value="78" type="Time"/>
</parameters>
</delay>
<batchSize>
<type>Cauchy</type>
<parameters length="2">
<param value="23" type="Alpha"/>
<param value="7878" type="Beta"/>
</parameters>
</batchSize>
...
</properties></Source>
转入:
<Source><properties>
....
<name>wer</name>
<delay>
<Deterministic Time="78"/>
</delay>
<batchSize>
<Cauchy Alpha="23" Beta="7878"/>
</batchSize>
........
</properties></Source>
我先尝试使用文件BuilderFactory,但我虽然能够获取名称标签的价值,但我无法从拖延/批量部分获得价值。 所用代码一
Element prop = (Element)propertyNode;
NodeList nodeIDProperties = prop.getElementsByTagName("name");
Element nameElement = (Element)nodeIDProperties.item(0);
NodeList textFNList = nameElement.getChildNodes();
String nodeNameValue = ((org.w3c.dom.Node)textFNList.item(0)).getNodeValue().trim();
//--------
NodeList delayNode = prop.getElementsByTagName("delay");
调用 getElementByName("type") 或 "parameters" 似乎没有返回我可以处理的任何内容。我有什么遗漏的吗,或者有没有更清晰的处理现有 xml 的方法。
需要遵循定义的格式,以便由Castor进行编组和解组。
任何帮助都会受到高度赞赏。