[英]Jdom2 parser with empty xml document
我正在尝试使用jdom2解析xml文档的字符串表示形式。 我期望xml字符串
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
成为有效的xml文档。 但是,当我运行以下简单代码段时:
import java.io.IOException;
import java.io.StringReader;
import org.jdom2.*;
public class Main {
public static void main(String []args){
SAXBuilder parser = new SAXBuilder();
String data = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
try {
Document doc = parser.build(new StringReader(data));
} catch (JDOMException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
我收到错误:
org.jdom2.input.JDOMParseException: Error on line 1: Premature end of file.
at org.jdom2.input.sax.SAXBuilderEngine.build(SAXBuilderEngine.java:232)
at org.jdom2.input.sax.SAXBuilderEngine.build(SAXBuilderEngine.java:303)
at org.jdom2.input.SAXBuilder.build(SAXBuilder.java:1196)
at testpack.Main.main(Main.java:32)
xml规范是否不允许没有根元素的xml有效负载? 如果不是,我应该如何检查xml文档是否为空?
编辑:我也注意到, 文件中Jdom2的文档()类规定,
文档必须具有根元素,因此,如果在添加根元素之前访问此文档,则该文档的格式将不正确,并且访问器方法将引发IllegalStateException。
可能只是Jdom2不支持空的xml文档?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.