次のxmlファイル構造があります
<?xml version="1.0" encoding="UTF-8"?>
<data Calls="1" Method="setDescription(java.lang.String) void" Class="Symptom" Package="emrservicedesign" Base_Time_.seconds.="0.000004"/>
<data Invoked_by="1" Method="testSetDescription() void" Class="SymptomTest"/>
<data Calls="4" Method="setDescription(java.lang.String) void" Class="Symptom" Package="emrservicedesign" Base_Time_.seconds.="0.000004"/>
</View>
しようとしているのは、属性として「Invoked_by」を持つすべての要素ノードを削除することです。そのため、上記の xml ファイルの結果は次のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<data Calls="1" Method="setDescription(java.lang.String) void" Class="Symptom" Package="emrservicedesign" Base_Time_.seconds.="0.000004"/>
<data Calls="4" Method="setDescription(java.lang.String) void" Class="Symptom" Package="emrservicedesign" Base_Time_.seconds.="0.000004"/>
</View>
これは私が書いたコードです
NodeList nodes = doc.getElementsByTagName("data");
for (int i = 1; i < nodes.getLength(); i++)
{Node node = nodes.item(i);
Element e = (Element) node;
if (e.hasAttribute("Invoked_by")){ nodes.item(i).removeChild(node);}
これがエラーです
org.w3c.dom.DOMException: NOT_FOUND_ERR: An attempt is made to reference a node in a context where it does not exist.
どんな体でも助けてくれればありがたい