「アドレス」という名前のノードの下に特定の情報が含まれている限り、タグ名「場所」のみを変更するメソッドに追加できる行コードは何ですか? したがって、「色」または「サイズ」を更新すると、nodeList に次のように伝えることができます:「これらの値は、「住所」に 123 メイン ストリートが含まれている場合にのみ変更してください。すべてのタイプの「等号」を試しました。注: 私が作成しました。チェックする変数として object.getAddress を使用するオブジェクト XML には 50 のエントリがあります。
<location>
<address>123 Main Street</address>
<color>red</color>
<size>large</size>
</location>
public void changeValue(Document doc, String oldValue, String NewValue) throws Exception {
Element root = doc.getDocumentElement();
NodeList childNodes = root.getElementsByTagName("location");
for (int i = 0; i < childNodes.getLength(); i++) {
NodeList subChildNodes = childNodes.item(i).getChildNodes();
for (int j = 0; j < subChildNodes.getLength(); j++) {
try {
if (subChildNodes.item(j).getTextContent().equals(oldValue)) {
subChildNodes.item(j).setTextContent(NewValue);
}
} catch (Exception e) {
}
}
}
File file = new File("XMLDatabase.xml");
save(file, doc);
}