解析xml得到XmlPullParserException

Posted

技术标签:

【中文标题】解析xml得到XmlPullParserException【英文标题】:Parsing xml getting XmlPullParserException 【发布时间】:2013-06-13 16:31:21 【问题描述】:

在 J2ME 中解析 xml 文件时出现错误

下面是错误

         org.xmlpull.v1.XmlPullParserException: precondition: START_TAG (position:END_TAG </ABC>@4:11 in java.io.InputStreamReader@e9eeb02a) 
       - org.kxml2.io.KXmlParser.exception(), bci=44
       - org.kxml2.io.KXmlParser.nextText(), bci=11
       - hello.Test.commandAction(Test.java:85)
       - javax.microedition.lcdui.Display$DisplayEventConsumerImpl.handleCommandEvent(), bci=296
       - com.sun.midp.lcdui.DisplayEventListener.process(), bci=467
       - com.sun.midp.events.EventQueue.run(), bci=182
       - java.lang.Thread.run(), bci=5

下面是代码

       this.in = getClass().getResourceAsStream("/"+
                this.engWord.getString().trim().toUpperCase().charAt(0)
                        + ".xml");
        this.is = new InputStreamReader(this.in);
        this.parser.setInput(this.is);
        this.parser.nextTag();
        this.parser.require(2, null, "Test");

下面是xml文件

                <TEST>
                  <ABC>
                     a deux
                  </ABC>
                    <DEF>
                     MOTHER 
                    </DEF>
                 </TEST>

【问题讨论】:

【参考方案1】:

问题是标签“Test”与“TEST”不匹配。 require 方法适用于区分大小写。

【讨论】:

以上是关于解析xml得到XmlPullParserException的主要内容,如果未能解决你的问题,请参考以下文章

在 xml 文件中得到“错误:解析 XML 时出错:未绑定前缀”

xml解析-jaxp添加结点

xml解析-jaxp删除结点

xml

使用 xml.etree.ElementTree 在 python 中解析 XML

曹工说Spring Boot源码-- Spring解析xml文件,到底从中得到了什么(util命名空间)