java - getDocument() 不断返回空值

标签 java xml xml-parsing

我正在尝试使用位于网络驱动器上的 Java 来解析 XML 文件...我已在此处查看了大量 XML 解析信息,但找不到我需要的答案...问题是 getDocument() 例程不断返回空值,即使解析器获取了准确的位置和文件名。

这是代码...

String ThisXMLFile = XMLFileData.getPath();
DOMParser myXMLParser = new DOMParser(); 
myXMLParser.parse(ThisXMLFile);   
Document doc = myXMLParser.getDocument();  

一些注释:

我必须使用 getPath(),因为 getName() 函数没有返回完全限定的文件名和路径 - XML 文件位于网络目录中,并且该目录在我的 PC 上映射到“V”驱动器

我已经导入了 DOM 对象所需的所有类头文件

上面给出的变量名称是真实且准确的,因此如果我无意中在变量声明中使用了保留关键字,请提供更正。

我在多种语言方面拥有丰富的编程经验,但这是我的第一个真正的 Java 应用程序。

上面的所有代码行和变量都起作用,直到我到达最后一行,然后 getDocument() 只是将 doc 变量设置为 null...这使得程序的其余部分中断。

最佳答案

我相信您调用了错误的方法...根据您的代码,当您需要调用:DOMParser.parse(InputSource)时,您正在执行:DOMParser.parse(systemId) ...

要创建一个InputSource,您可以这样做:

InputSource source = new InputSource(new FileInputStream(ThisXMLFile));
myXMLParser.parse(source);
Document doc = myXMLParser.getDocument();

注意:记得关闭打开的FileInputStream!!!

关于java - getDocument() 不断返回空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39517166/

相关文章:

java - 在 Java 中解析大型 XML 文件时出现文件未找到异常

java - 如何获取 xml 标签内的值?

python - 使用 lxml.objectify 删除 "xmlns:py..."

ruby - Nokogiri 将字符串解析为 xml

Java,解析 xml 属性的原始、未转换值。贾克森或贾克斯布

java - 如何解析 XML 字符串并检索元素的字符索引?

java - 具体如何从ArrayList中提取元素呢?

java - 无法找到元素 [bean] 的 BeanDefinitionParser

java - 接口(interface)内 transient

java - 日历字段增量给出了意想不到的结果