Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
xml-Java中的节点位置_Java_Xml - Fatal编程技术网

xml-Java中的节点位置

xml-Java中的节点位置,java,xml,Java,Xml,我想准备一个函数,该函数将给出xml中节点的位置。 例如: int NodePosition = doc.getDocumentElement().getChildNodes().item(t).getNodeName().Position() 将来我想做一些类似的(当然这是一个例子): 有可能做出这样的东西吗?或者你可能知道一些函数,它们构成了这样的东西 例如,当我走得更深时,就有一个获取位置的问题。因为m=7 doc.getDocumentElement().getChildNodes()

我想准备一个函数,该函数将给出xml中节点的位置。
例如:

int NodePosition = doc.getDocumentElement().getChildNodes().item(t).getNodeName().Position()
将来我想做一些类似的(当然这是一个例子):

有可能做出这样的东西吗?或者你可能知道一些函数,它们构成了这样的东西

例如,当我走得更深时,就有一个获取位置的问题。因为
m=7

doc.getDocumentElement().getChildNodes().item(t).getChildNodes().item(m)
当我尝试这样做时(但我必须保存位置):

我犯了一个错误

java.lang.NullPointerException

在我看来,您正在重新发明轮子-您正在尝试构建自己的XPath版本-请参见:


在我看来,您正在重新发明轮子-您正在尝试构建自己的XPath版本-请参阅:


请定义节点位置(以示例为例),以及要创建的函数应作为参数并返回什么,因为这一点并不清楚。我使用循环“for”检查节点,您可以看到项目(t)以循环中的“I”为例。我想得到这个节点的位置并写入一些整数。也许你们知道如何检查节点的位置并将其保存为整数?然后用于显示数据。因此,位置是
i
的值。向我们展示您的尝试。我知道位置是“I”,但问题是当我获取深度数据doc.getDocumentElement().getChildNodes().item(t)、getChildNodes().item(m)时,我的程序可以上载具有不同参数的所有xml文档,并且看起来非常简单。OK。然后再回答我的第一个问题。函数的参数是什么?它应该返回什么。举例说明。它越来越不清晰了。请定义节点位置是什么(用一个例子),以及您要创建的函数应该作为参数并返回什么,因为它一点也不清楚。我使用循环“for”检查节点,您可以看到项(t)以循环中的“I”为例。我想得到这个节点的位置并写入一些整数。也许你们知道如何检查节点的位置并将其保存为整数?然后用于显示数据。因此,位置是
i
的值。向我们展示您的尝试。我知道位置是“I”,但问题是当我获取深度数据doc.getDocumentElement().getChildNodes().item(t)、getChildNodes().item(m)时,我的程序可以上载具有不同参数的所有xml文档,并且看起来非常简单。OK。然后再回答我的第一个问题。函数的参数是什么?它应该返回什么。举例说明。我理解这一点,但我永远不知道我的xml树会是什么样子。例如,我的程序将加载具有不同参数和节点的所有xml。你可以给我你的xml,我的程序将加载它,但即使我也不知道你的xml结构。不用担心,XPath接受字符串作为参数,它看起来非常类似于“文件路径”,而且它允许你指定数字索引,如“//books/authors/author/book[3]”,这意味着在书中,子节点作者,子节点作者,第三本书。或者,如果你不知道节点名,你可以使用*来做各种花哨的事情。而且,它是一个标准,适用于所有主要的编程语言——它不是特定于Java的——我理解这一点,但我永远不知道我的xml树会是什么样子。例如,我的程序将加载具有不同参数和节点的所有xml。你可以给我你的xml,我的程序将加载它,但即使我也不知道你的xml结构。不用担心,XPath接受字符串作为参数,它看起来非常类似于“文件路径”,而且它允许你指定数字索引,如“//books/authors/author/book[3]”,这意味着在书中,子节点作者,子节点作者,第三本书。或者,如果你不知道节点名,你可以使用*来做各种花哨的事情。此外,它是一个标准,适用于所有主要编程语言——它不是Java特有的
System.out.println(doc.getDocumentElement().getChildNodes().item(7).getNodeName());
java.lang.NullPointerException