使用java根据节点号删除xml节点?

使用java根据节点号删除xml节点?,java,xml,dom,xml-parsing,xmlnode,Java,Xml,Dom,Xml Parsing,Xmlnode,这里我有xml结构 <book> <!--node 0--> <id>1111</id> <name>abacd</name> <author>abcd</author> <price>700</price> <category>abcd</category> </book>

这里我有xml结构

<book>  <!--node 0-->
    <id>1111</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>       
</book>                       
<book>  <!--node 1-->
    <id>2222</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>       
</book>  
<book>  <!--node 2-->
    <id>3333</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>       
</book>  

请帮助我获取所需的输出。

您的XML缺少根元素。以下是我的更正版本:

<root>
<book>  <!--node 0 -->
    <id>1111</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>
</book>
<book>  <!--node 1 -->
    <id>2222</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>
</book>
<book>  <!--node 2 -->
    <id>3333</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>
</book>
}

此程序打印出:

Deleted 1 nodes.

在这里@ppuskar,我不想使用XPathFactory xpf=XPathFactory.newInstance;XPath=xpf.newXPath;XPathExpression expression=xpath.compile//A/B[C/E/text=13];请引导我
public class DeleteNodeTest {

public interface Books {
    @XBDelete("//book[id=$PARAM0]")
    int deleteBooks(int id);
}

@Test
public void deleteNode() throws IOException {
    Books books = new XBProjector(Flags.TO_STRING_RENDERS_XML).io().url("resource://test.xml").read(Books.class);
    System.out.println("Deleted " + books.deleteBooks(1111) + " nodes.");
    System.out.println(books);
}
Deleted 1 nodes.
<book>  <!--node 1 -->
    <id>2222</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>
</book>
<book>  <!--node 2 -->
    <id>3333</id>
    <name>abacd</name>
    <author>abcd</author>
    <price>700</price>
    <category>abcd</category>
</book>