0
eElement
にある値を古い値と一致するものを別の値に変更する必要があります。xmlの値をjavaでdomを使用
eElement.setAttribute(...)
機能とsetTextContent
機能で試してみましたが機能しません。
新しい値がnewValue
という文字列変数に格納されているとしたら、コードを実行するにはどうすればよいですか?
NodeList leaf = doc.getElementsByTagName(relativeLeaf);
System.out.println(leaf.item(0).getNodeName());
for (int temp = 0; temp < leaf.getLength(); temp++) {
Node nNode = leaf.item(temp);
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
String oldValueInCells = eElement.getElementsByTagName(relativeLeaf).item(0).getTextContent();
System.out.println("old tag : " + eElement.getElementsByTagName(relativeLeaf).item(0).getTextContent());
if(oldValueInCells.contentEquals(oldVal)){
// ####
// here i have to change tha value in eElement
// where it match with the old Value with a new one
}
}
}
感謝=):
出典:あなたはまず、次のようにノード要素を取得する必要があります。私はテストコードを貼り付けます。 \t \t \t \t \t IF(eElement.getElementsByTagName( "説明")。項目(0).getTextContent()。contentEquals( "X")){ \t \t \t \t \t \t \t \t \t \t \t \t NNODE。 setNodeValue( "co"); \t \t \t \t \t \tのSystem.out.println( "説明:" +((要素)NNODE).getElementsByTagName( "説明")項目(0).getTextContent())。 \t \t \t \t equals関数は正常に機能しますが、値を変更する必要があることはわかりません。何が問題なの? –
値が更新されている様子はどうですか? –
((Element)nNode).getElementsByTagName( "description")。item(0).getTextCo ntent()); ノードを要素にキャストし、タグ名で取得する関数を適用します。 –