我正在用dom4j操作xml,增加,修改节点都已经完成。但是删除节点失败。我的xml是这样的:
<?xml version="1.0" encoding="gb2312"?><databaselist>
<database>
<name>中国站22</name>
<modifytime>2006-02-14</modifytime>
</database>
<database>
<name>中国站242</name>
<modifytime>2006-02-14</modifytime>
</database>
<database>
<name>242</name>
<modifytime>12 Feb 2006 06:33:17 GMT</modifytime>
</database>
</databaselist>我具体是这样做的:public void delDatabase(XMLForm xmlForm){
List DROList = getRootElement().elements();
Iterator DROIter = DROList.iterator();
while(DROIter.hasNext()){
Element database = (Element)DROIter.next();
Element e_name = database.element("name");
Element e_modifytime = database.element("modifytime");
if(e_name.getText().equals(xmlForm.getName())){
//database.remove(e_name);//(1)
//database.remove(e_modifytime);//(2)
//getRootElement().remove(dataN);
getRootElement().remove(database);
//System.out.println("111111");
}
}
saveDocument();
}(1)和(2)均能执行成功,但是不能删除<database></database>
我应该怎么办,谢谢!!!
<?xml version="1.0" encoding="gb2312"?><databaselist>
<database>
<name>中国站22</name>
<modifytime>2006-02-14</modifytime>
</database>
<database>
<name>中国站242</name>
<modifytime>2006-02-14</modifytime>
</database>
<database>
<name>242</name>
<modifytime>12 Feb 2006 06:33:17 GMT</modifytime>
</database>
</databaselist>我具体是这样做的:public void delDatabase(XMLForm xmlForm){
List DROList = getRootElement().elements();
Iterator DROIter = DROList.iterator();
while(DROIter.hasNext()){
Element database = (Element)DROIter.next();
Element e_name = database.element("name");
Element e_modifytime = database.element("modifytime");
if(e_name.getText().equals(xmlForm.getName())){
//database.remove(e_name);//(1)
//database.remove(e_modifytime);//(2)
//getRootElement().remove(dataN);
getRootElement().remove(database);
//System.out.println("111111");
}
}
saveDocument();
}(1)和(2)均能执行成功,但是不能删除<database></database>
我应该怎么办,谢谢!!!
for(int i =0;i<DROList.size();i++){
Element database = (Element)DROList.get(i);
Element e_name = database.element("name");
Element e_modifytime = database.element("modifytime");
if(e_name.getText().equals(xmlForm.getName())){
DROList.remove(i);
}
}
saveDocument();
我自己已经解决了,谢谢!