【问题标题】:ParseException: At line 1, column 0: no element found SAXException in androidParseException:在第 1 行,第 0 列:在 android 中未找到 SAXException 元素
【发布时间】:2012-01-04 07:03:58
【问题描述】:

在我的一个 android 应用程序中,当我尝试从某个 url 解析 xml 文件时,有时我得到 ParseException: At line 1, column 0: no element found SAXException 但奇怪的是我没有得到这个异常总是意味着当我再次刷新页面时(回到上一个活动并再次出现)它开始工作(意味着它解析 xml)。

我找不到发生这种情况的确切原因。在我看来,这可能是互联网的问题,但网络正在设备上运行,还有一件事 它并不总是发生,有时它很容易理解 XML,但有时它会抛出异常

这是我用来解析的代码:

xr.parse(new InputSource(new URL(urlToHit).openStream()));

我也尝试了另一种解析方式:

URL serverAdd=new URL(urlToHit);

     URLConnection connection = serverAdd.openConnection();

     xr.parse(new InputSource(connection.getInputStream()));

但问题仍然存在。(有时它解析xml有时它不能)

请帮忙,因为这对我来说非常紧急。

谢谢。

【问题讨论】:

    标签: android connection saxparser


    【解决方案1】:

    它与 Android 无关,可能是您的 Internet 连接不可靠,因此 SAX 解析器未获取有效的 XML 文件

    【讨论】:

    • 感谢您的快速回复。那么我应该怎么做才能消除这个问题,因为有时它会起作用,有时它不会。我也使用其他方法进行连接,但有时仍然会出现异常。请建议
    • 如果文件不是太大,请尝试使用 DOM 而不是 SAX,如果遇到异常,请重试
    • 我不能使用 DOM,因为我的 XML 很大(用于提高效率的方法),我正在重新尝试解析 XML(它有效),但它降低了我的应用程序的效率。我必须让我的应用上线,所以请建议您是否有其他方法.....?
    【解决方案2】:

    首先看看这个Question,如果它有助于谈论Question code and Answer两者。

    好的,现在在那个问题中,我已将输入流的编码类型设置为is.setEncoding("ISO-8859-1");,也可以在您的情况下尝试。

    【讨论】:

      【解决方案3】:

      我建议不要使用 URLConnection..参考以下 sn-p

      它可以在没有 URLConnection 的情况下工作..试试..

      XMLReader xr = sp.getXMLReader();
      URL sourceUrl = new URL ("http://10.0.2.2:8080/folderName/question.xml");
      MyXMLHandler myXMLHandler = new MyXMLHandler();
      xr.setContentHandler(myXMLHandler);
      xr.parse(new InputSource(sourceUrl.openStream()));`
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-12
        • 2011-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多