<?xml version="1.0" encoding="UTF-8"?><Project internalId="4e303a41-9e23-4193-90a9-67c8e6b44699" name="BAM Testing">
<DataTables>
<Table internalId="a16c7435-3fdc-4357-9133-df22ad235bb2" name="Data Preparation_Group">
<Columns>
<Column name="Name"/>
<Column name="Description"/>
<Column name="Grouptype"/>
</Columns>
<Rows>
<Row isEnabled="true"/>
<Row isEnabled="true"/>
<Row isEnabled="true">
<Field column="Name">Citibank Individuals</Field>
<Field column="Description">Citibank Individuals</Field>
<Field column="Grouptype">Individual Group</Field>
</Row>
<Row isEnabled="true">
<Field column="Name">Test_Delete</Field>
<Field column="Description">Test for Delete Function</Field>
<Field column="Grouptype">Institution Group</Field>
</Row>
<Row isEnabled="true">
<Field column="Name">Test_Edit</Field>
<Field column="Description">Test for Edit Function</Field>
<Field column="Grouptype">Institution Group</Field>
</Row>
</Rows>
</Table>
</DataTables>
</Project>我现在又这样的一个xml
我想用dom4j 把里面<rows></rows>中间标签的全部内容都删除掉!我现在是这么写的 发现没有效果
SAXReader reader = new SAXReader();
Document doc = reader.read(new File(file));
boolean Flag = false;
List<Element> list = new ArrayList<Element>();
// list=doc.selectNodes("//Rows/Row/@isEnabled");
// //Table[contains(name,'Data Preparation')]Rows/Row
list = doc.selectNodes(xpath);
System.out.println(list.size());
Iterator iter = list.iterator();
iter = list.iterator();
while (iter.hasNext())
{
Element bookElement = (Element) iter.next();//
Iterator iterator = bookElement.elementIterator("Field");
while (iterator.hasNext())
{
Element titleElement = (Element) iterator.next();
bookElement.getParent().remove(bookElement);
}
}
OutputFormat opf=OutputFormat.createPrettyPrint();
XMLWriter xmr = new XMLWriter(new FileWriter(new File(file)),opf);
xmr.write(doc);
xmr.close();求指教!!DOM4JXMLJAVA解析
<DataTables>
<Table internalId="a16c7435-3fdc-4357-9133-df22ad235bb2" name="Data Preparation_Group">
<Columns>
<Column name="Name"/>
<Column name="Description"/>
<Column name="Grouptype"/>
</Columns>
<Rows>
<Row isEnabled="true"/>
<Row isEnabled="true"/>
<Row isEnabled="true">
<Field column="Name">Citibank Individuals</Field>
<Field column="Description">Citibank Individuals</Field>
<Field column="Grouptype">Individual Group</Field>
</Row>
<Row isEnabled="true">
<Field column="Name">Test_Delete</Field>
<Field column="Description">Test for Delete Function</Field>
<Field column="Grouptype">Institution Group</Field>
</Row>
<Row isEnabled="true">
<Field column="Name">Test_Edit</Field>
<Field column="Description">Test for Edit Function</Field>
<Field column="Grouptype">Institution Group</Field>
</Row>
</Rows>
</Table>
</DataTables>
</Project>我现在又这样的一个xml
我想用dom4j 把里面<rows></rows>中间标签的全部内容都删除掉!我现在是这么写的 发现没有效果
SAXReader reader = new SAXReader();
Document doc = reader.read(new File(file));
boolean Flag = false;
List<Element> list = new ArrayList<Element>();
// list=doc.selectNodes("//Rows/Row/@isEnabled");
// //Table[contains(name,'Data Preparation')]Rows/Row
list = doc.selectNodes(xpath);
System.out.println(list.size());
Iterator iter = list.iterator();
iter = list.iterator();
while (iter.hasNext())
{
Element bookElement = (Element) iter.next();//
Iterator iterator = bookElement.elementIterator("Field");
while (iterator.hasNext())
{
Element titleElement = (Element) iterator.next();
bookElement.getParent().remove(bookElement);
}
}
OutputFormat opf=OutputFormat.createPrettyPrint();
XMLWriter xmr = new XMLWriter(new FileWriter(new File(file)),opf);
xmr.write(doc);
xmr.close();求指教!!DOM4JXMLJAVA解析
Document doc = reader.read(new File(file));
boolean Flag = false;
List<Element> list = new ArrayList<Element>();
// list=doc.selectNodes("//Rows/Row/@isEnabled");
// //Table[contains(name,'Data Preparation')]Rows/Row
list = doc.selectNodes(xpath);
System.out.println(list.size());
Iterator iter = list.iterator();
iter = list.iterator();
while (iter.hasNext())
{
Element bookElement = (Element) iter.next(); bookElement.getParent().remove(bookElement);
}
OutputFormat opf=OutputFormat.createPrettyPrint();
XMLWriter xmr = new XMLWriter(new FileWriter(new File(file)),opf);
xmr.write(doc);
xmr.close(); 我如果是这么写的话 就会把Rows也给删除掉!!
我又不想删除ROws
求指教!