Java URL不存在时的SAXParseException
我试图使用DocumentBuilder的解析方法解析xml,该方法将URI作为参数。为此,我创建了一个表示URI的String对象,然后调用传递String对象作为参数的parse方法 parse方法调用工作正常,返回一个新的DOM对象。但是,当我尝试打印返回的DOM对象时,它会显示: org.xml.sax.SAXParseException:根元素后面的文档中的标记必须格式正确。解析xml的代码段如下所示:Java URL不存在时的SAXParseException,java,xml,saxparseexception,Java,Xml,Saxparseexception,我试图使用DocumentBuilder的解析方法解析xml,该方法将URI作为参数。为此,我创建了一个表示URI的String对象,然后调用传递String对象作为参数的parse方法 parse方法调用工作正常,返回一个新的DOM对象。但是,当我尝试打印返回的DOM对象时,它会显示: org.xml.sax.SAXParseException:根元素后面的文档中的标记必须格式正确。解析xml的代码段如下所示: <?xml version="1.0" encoding="utf-
<?xml version="1.0" encoding="utf-8"?>
<Data>
<ColorMessages>
<Message Color="RED">Warning: The batch color level is red. Please check it out!</Message>
<Message Color="YELLOW">Alert: This batch color level is yellow. Please stay on alert!</Message>
<Message Color="GREEN">Cool: The batch color level is green. Nice!</Message>
<Message Color="BLUE">Excellent: The batch color level is blue. Great job!</Message>
</ColorMessages>
</Data>
但是,当URL不存在时,解析方法仍然返回
org.xml.sax.SAXParseException:文档中的标记如下
根元素必须格式良好
xml是一种普通的xml,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<Data>
<ColorMessages>
<Message Color="RED">Warning: The batch color level is red. Please check it out!</Message>
<Message Color="YELLOW">Alert: This batch color level is yellow. Please stay on alert!</Message>
<Message Color="GREEN">Cool: The batch color level is green. Nice!</Message>
<Message Color="BLUE">Excellent: The batch color level is blue. Great job!</Message>
</ColorMessages>
</Data>
关于如何在解析方法调用期间识别不存在的URL,有什么想法吗
谢谢。就我个人而言,我更喜欢设置网络连接,或者自己打开文件,然后将流传递到xml子系统。这需要更多的工作,但你可以控制他的行为。i、 在那种情况下,你不依赖别人认为是好主意的东西
执行此操作时,还需要确保关闭流。下面的XML位没有假设这就是您想要的。myfile.XML的内容是什么样子的?如果URL不存在,它可能会抛出IOException。我很确定您在这里发布的示例xml不是您收到的。按照比尔提出的建议去做