`

jdom读取xml报错

    博客分类:
  • java
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();

分享到:
评论

相关推荐

    dom4j解析XML所需jar包

    通过这些API,开发者可以轻松地创建、修改和读取XML结构。 2. **XML解析**:DOM4J支持多种解析方式,包括SAX(Simple API for XML)和DOM。SAX是基于事件的解析,适用于处理大文件;DOM则将整个XML文档加载到内存,...

    JDOMException错误解决办法

    在处理XML文档时,经常需要用到Java的解析库,其中JDOM(Java Document Object Model)是一个非常流行的开源库,用于读取、修改和创建XML文档。但在使用过程中,可能会遇到`JDOMException`异常,这种异常通常与JDOM库...

    xalan.jar,serializer.jar,jdom.jar

    它提供了一个基于树型结构的API,使得开发者可以更方便地创建、读取和修改XML文档。JDOM与标准的DOM API相比,更加轻量级,且专为Java设计,因此在性能和易用性上有所优化。 4. **DWR (Direct Web Remoting)**: ...

    dom4j-1.6.1完整包

    它提供了强大的XML解析、操作和事件处理功能,使得开发者能够轻松地读取、修改和生成XML数据。标题中的"dom4j-1.6.1完整包"指的是这个版本的DOM4J库的完整打包文件,包含了所有相关的类和资源,适用于那些需要在项目...

    jaxen-1.1-beta-6.jar+dom4j-1.6.1.jar.zip

    它具备读取、创建、修改XML文档的能力,并且支持XPath查询,这使得开发者可以轻松地对XML数据进行操作。Dom4j的API设计得非常直观,使得开发人员能够快速上手并高效地处理XML任务。 描述中提到“xml解析需要的两个...

Global site tag (gtag.js) - Google Analytics