org.xml.sax.SAXParseException 解析xml格式字符串出错

org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 559; 元素类型 "name" 必须由匹配的结束标记 "</name>" 终止。
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)
at org.dm.SaxParser.parse(SaxParser.java:17)
at org.dm.XMLTest.main(XMLTest.java:26)

另外我的xml文件没有这个标题 <?xml version="1.0" encoding="utf-8"?>
就算加上这个一样会报错。

org.xml.sax.SAXParseException 解析xml格式字符串出错是设置错误造成的,解决方法为:

1、打开电脑上的任意浏览器。

2、打开浏览器以后,使用搜索引擎搜索“XML转JSON在线工具”关键词。

3、在搜索结果中,选择且进入一个在线的转换工具网页。

4、在工具网页中,在指定的XML文本框中输入XML字符串。

5、完成XML字符串的输出以后,点击界面上的转换按钮。

6、当网页工具完成转换以后,将JSON数据复制出来进行使用即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-01-29

元素类型 "name" 必须由匹配的结束标记 "</name>" 终止。

说明xml<name>没有配对,XML要求所有元素必须配对,有<name>,必须有</name>,检查559行,y559行是</name>。这种平等和一致性并不仅限于 Java 开发工具,尽管 Eclipse 是使用Java语言开发的,但用途并不限于 Java 语言。

例如,支持诸如C/C++、COBOL、PHP、Android等编程语言的插件已经可用,或预计将会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。

扩展资料:

SAX解析器读取输入文档并在处理文档时将每个事件推给文档处理器(MyContentHandler)。与DOM相比,SAX解析器能提供更好的性能优势,它提供对XML文档内容的有效低级访问。SAX模型最大的优点是内存消耗小,因为整个文档无需一次加载到内存中,这使SAX解析器可以解析大于系统内存的文档。

另外,你无需像在DOM中那样为所有节点创建对象。最后,SAX“推”模型可用于广播环境,能够同时注册多个ContentHandler,并行接收事件,而不是在一个管道中一个接一个地进行处理。

参考资料来源:百度百科-SAX解析

参考资料来源:百度百科-sax

本回答被网友采纳
第2个回答  推荐于2017-11-25
元素类型 "name" 必须由匹配的结束标记 "</name>" 终止
提示这个,很明显,你的xml<name>没有配对,XML要求所有元素必须配对,有<name>,必须有</name>,检查你的559行,y559行应该是</name>本回答被网友采纳
第3个回答  2012-11-16
你的xml和你的解析格式不一致
第4个回答  2012-11-15
从错误信息看,这个xml不是合式的,name这个tag没有对应的结束标签(有<name> 没有对应的</name>)本回答被网友采纳