如何计算Java中XML文档中节点的子节点数?

如何计算Java中XML文档中节点的子节点数?,java,xml,Java,Xml,我的xml与此类似: <parent> <child1> <child2> <child3> </parent> 请怎么做?不管是谁,我都知道了,谢谢你的评论 File file = new File(new File(".").getPath() + "\\src\\yourFile.xml"); doc = DocumentBuilderFactory.newInstance().newDocumentBuild

我的xml与此类似:

<parent>
   <child1>
   <child2>
   <child3>
</parent>

请怎么做?

不管是谁,我都知道了,谢谢你的评论

File file = new File(new File(".").getPath() + "\\src\\yourFile.xml");
doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(file);
int childrenCount = doc.getChildNodes().item(0).getChildNodes().getLength();
NodeList image = doc.getElementsByTagName("Point");
Node singleTerminalNode = image.item(i);
Element firstLevel = (Element)singleTerminalNode;
NodeList value1Nodes = (firstLevel).getElementsByTagName("ImageFile");
int lengthofimage = value1Nodes.getLength();

不管怎样,伙计们,我明白了谢谢你们的评论

NodeList image = doc.getElementsByTagName("Point");
Node singleTerminalNode = image.item(i);
Element firstLevel = (Element)singleTerminalNode;
NodeList value1Nodes = (firstLevel).getElementsByTagName("ImageFile");
int lengthofimage = value1Nodes.getLength();
确保导入org.w3c.dom.*和javax.xml*


确保导入org.w3c.dom.*和javax.xml.*

首先,它将返回1作为结果,因为根节点始终是单独的。但是如果要使用doc.getChildNodes.item0.getChildNodes.getLength;首先它将返回1作为结果,因为根节点总是单独的。但是如果要使用doc.getChildNodes.item0.getChildNodes.getLength;返回3.为什么用括号将第一级四舍五入?它是有意义的还是标准中推荐的?因为您需要point的子标记,并且只能通过这种方式实现…我的意思是,为什么要使用firstLevel.getElementsByTagNameImageFile;而不是firstLevel.getElementsByTagNameImageFile;?哦,它有用吗?我还没有试过…因为第一级是元素,你正在把它传递给节点列表…你又不理解我了;对不起我的英语。我的意思是在这部分代码中不需要括号。。。value1Nodes=firstLevel.getElementsByTag…为什么用括号将firstLevel四舍五入?它是有意义的还是标准中推荐的?因为您需要point的子标记,并且只能通过这种方式实现…我的意思是,为什么要使用firstLevel.getElementsByTagNameImageFile;而不是firstLevel.getElementsByTagNameImageFile;?哦,它有用吗?我还没有试过…因为第一级是元素,你正在把它传递给节点列表…你又不理解我了;对不起我的英语。我的意思是在这部分代码中不需要括号。。。value1Nodes=firstLevel.getElementsByTag。。。
Document doc = docBuilder.parse("YOUR_FILE_PATH");
Node tag1 = doc.getElementsByTagName("YOUR_NODE");
NodeList list1=tag1.getChildNodes();
         System.out.println(list1.getLength());