Android的入门错误虽然Parseing的XML - 第1行,列0 - 没有找到元素 [英] Android Getting Error While Parseing The XML - At line 1, Column 0 - no element found

查看:187
本文介绍了Android的入门错误虽然Parseing的XML - 第1行,列0 - 没有找到元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问题是上面提到的错误

我的XML,我是从网络上获得

my xml which i am getting from web

           <?xml version="1.0" encoding="ISO-8859-1" ?>
       <Doc>
       <Root>
       <Record>
               <sar_id>1</sar_id>
               <sar_region><![CDATA[Antigua & Barbuda]]></sar_region>
               <sar_auth>Antigua and Barbuda Defence Force Coast Guards
       </sar_auth>
               <email>abdfcg@candw.ag</email>
               <primary><![CDATA[1 268 462 06 71]]></primary>
               <secondary></secondary>
       </Record>
       <Record>
               <sar_id>2</sar_id>
               <sar_region><![CDATA[Argentina]]></sar_region>
               <sar_auth>Comando de Operaciones Navals, Argentine Navy
       </sar_auth>
               <email>coopacsm@ara.mil.ar</email>
               <primary><![CDATA[54 2932 487 640?]]></primary>
               <secondary></secondary>
       </Record>
       <Record>
               <sar_id>3</sar_id>
               <sar_region><![CDATA[Aruba]]></sar_region>
               <sar_auth>SARFA
       </sar_auth>
               <email>sarfa16@hotmail.com</email>
               <primary><![CDATA[297 5 837371]]></primary>
               <secondary></secondary>
       </Record>
  </Root>
  </Doc>

我的code解析XML

my code to parse xml

        try{
    URL url = new URL(
            "http://myurl.com");
    SAXParserFactory factory = SAXParserFactory.newInstance();
    SAXParser saxparser = factory.newSAXParser();

    XMLReader xmlReader = saxparser.getXMLReader();
    SARParser getTParser = new SARParser(itemList);
    xmlReader.setContentHandler(getTParser);


    InputSource is = new InputSource(url.openStream());
    is.setEncoding("ISO-8859-1");

    BufferedReader br = new BufferedReader(new InputStreamReader(is.getByteStream()));
    String line;
    while((line=br.readLine())!=null)
    {
        Log.i("Line", line);
    }
    xmlReader.parse(is);

               //xmlReader.parse(new InputSource(url.openStream()));

//在GOOGLE,我发现这个解决办法,但此GIVE ME误差不规范TOKEN AT LINE 15

//ON GOOGLE I FOUND THIS SOLUTION BUT THIS GIVE ME ERROR FOR NOT WELL FORMED TOKEN AT LINE 15

} catch (Exception e) {
    e.printStackTrace();
}

和日志

    09-01 12:32:11.461: WARN/System.err(870): org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: no element found
09-01 12:32:11.492: WARN/System.err(870):     at org.apache.harmony.xml.ExpatParser.finish(ExpatParser.java:538)
09-01 12:32:11.492: WARN/System.err(870):     at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:468)
09-01 12:32:11.492: WARN/System.err(870):     at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:329)
09-01 12:32:11.492: WARN/System.err(870):     at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:286)
09-01 12:32:11.492: WARN/System.err(870):     at com.openxcell.sar.Profile.onCreate(Profile.java:77)
09-01 12:32:11.492: WARN/System.err(870):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)
09-01 12:32:11.492: WARN/System.err(870):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2364)
09-01 12:32:11.492: WARN/System.err(870):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2417)
09-01 12:32:11.492: WARN/System.err(870):     at android.app.ActivityThread.access$2100(ActivityThread.java:116)
09-01 12:32:11.492: WARN/System.err(870):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
09-01 12:32:11.492: WARN/System.err(870):     at android.os.Handler.dispatchMessage(Handler.java:99)
09-01 12:32:11.521: WARN/System.err(870):     at android.os.Looper.loop(Looper.java:123)
09-01 12:32:11.521: WARN/System.err(870):     at android.app.ActivityThread.main(ActivityThread.java:4203)
09-01 12:32:11.521: WARN/System.err(870):     at java.lang.reflect.Method.invokeNative(Native Method)
09-01 12:32:11.521: WARN/System.err(870):     at java.lang.reflect.Method.invoke(Method.java:521)
09-01 12:32:11.521: WARN/System.err(870):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
09-01 12:32:11.521: WARN/System.err(870):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
09-01 12:32:11.521: WARN/System.err(870):     at dalvik.system.NativeStart.main(Native Method)

请帮我在这。
如果你曾经有过同样的问题,你有什么想解决...请与我分享乌尔技巧。

Please help me in this. If you ever had the same problem, what have you tried to resolve...please share ur tricks with me..

感谢您,
MAYUR帕雷克

Thank You, Mayur Parekh

推荐答案

您阅读你的InputStream两次。

Your reading your inputstream twice.

 InputSource is = new InputSource(url.openStream());

 new BufferedReader(new InputStreamReader(is.getByteStream()));

  xmlReader.parse(is);

同时读取InputStream中,这是一种没有没有。

both read the InputStream, that is a no no.

删除的BufferedReader和while循环(他们只是在那里确认XML已经下载反正你说它

Remove the BufferedReader and the while loop (they were only there to confirm the XML had downloaded anyway which you say it has)

我无法找到一个链接来备份我的理论。 尽我所能找到的-Reading IS两次 -

I can't find a link to back up my theory. Best I could find -Reading an IS twice-

这篇关于Android的入门错误虽然Parseing的XML - 第1行,列0 - 没有找到元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆