Android:第1行的parseexception,第0列没有找到元素?

时间:2010-11-19 10:08:25

标签: android xml-parsing

我遇到了像

这样的问题

0

org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: no element found
 org.apache.harmony.xml.ExpatParser.finish(ExpatParser.java:553) Displayed activity com.logictreeit.flight1/com.logictreeit.flight.app.MainTabActivity: 1689 ms (total 1689 ms)
 org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:483)
   org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:320)
    org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:293)

有时候会成功解析,但有时候会出现错误。

我的代码是

URL url = new URL(urlString);
        SAXParserFactory saxParserFactory= SAXParserFactory.newInstance();
        SAXParser saxParser = saxParserFactory.newSAXParser();
        XMLReader xmlReader = saxParser.getXMLReader();
        FlightGuideHandler flightGuideHandler = new FlightGuideHandler();
        xmlReader.setContentHandler(flightGuideHandler);
        inputStream = url.openStream();
        xmlReader.parse(new InputSource(urlString)); // am getting error at this line

任何人都可以帮我解决这个错误。

感谢yoyu, SRINIVAS

3 个答案:

答案 0 :(得分:2)

您是否仔细检查过XML文件顶部没有空白区域,并且XML声明是第一件出现的内容?

答案 1 :(得分:1)

而不是
         inputStream = url.openStream(); xmlReader.parse(new InputSource(urlString));

试     xmlReader.parse(new InputSource(inputStream)); or
xmlReader.parse(new InputSource(urlString.openStream()));

答案 2 :(得分:0)

我认为你正面临这个问题,因为xml格式不正确......这是一个适合你的工作。只需清理xml,然后解析它......只需用“& amp;”替换xml的'&'(忽略“& amp;”之间的空格).....这可能会解决你的问题。 ......由于'&'的出现,这种问题可能会出现在获得的XML数据中。

例如:如果你的字符串(xmlString)是你的XML数据,那么

xmlString = xmlString.replaceAll(“&”,“& amp;”); [请忽略“& amp;”之间的空格因为我保存到表单时无法生成相同的单词。 ]

将为您提供无错误的XML字符串以进行解析。

希望它可以节省你的时间至少几分钟

此致 苏欣菲利普。