jdom读取xml报错

报错信息是:
org.jdom.input.JDOMParseException: Error on line 1: Content is not allowed in prolog.
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:381)

因为xml文件有BOM头,把它去掉就OK了.


这个xml可以没有DTD
import jdom.jar

StringReader read = new StringReader(xmlContent);
// 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
InputSource source = new InputSource(read);
// 创建一个新的SAXBuilder
SAXBuilder sb = new SAXBuilder();
// 通过输入源构造一个Document
Document doc = sb.build(source);
// 取的根元素
Element requestRoot = doc.getRootElement();

// 获得XML中的命名空间(XML中未定义可不写)
//Namespace ns = requestRoot.getNamespace();
// 获取head子节点
String requestRootName = requestRoot.getName();
if(!"request".equals(requestRootName)) {
throw new RuntimeException("请求的文件格式有错误,根标签应该是request. fileName="+fileName);
}
Element head = requestRoot.getChild("head");

Element body = requestRoot.getChild("body");

List list = body.getChildren();

你可能感兴趣的:(xml)