Android 我正在尝试解析桌面上的xml文件。我犯了一个错误

Android 我正在尝试解析桌面上的xml文件。我犯了一个错误,android,Android,解析代码是: private UrlList parseUrl(URL url) { URL SourceUrl = null; SourceUrl = url; try { /** Handling XML */ SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); XMLRead

解析代码是:

private UrlList parseUrl(URL url) {
    URL SourceUrl = null;
    SourceUrl = url;

    try {
        /** Handling XML */
        SAXParserFactory spf = SAXParserFactory.newInstance();
        SAXParser sp = spf.newSAXParser();
        XMLReader xr = sp.getXMLReader();
        /** Create handler to handle XML Tags ( extends DefaultHandler ) */
        XMLParser myXmlParser = new XMLParser();
        xr.setContentHandler(myXmlParser);
        xr.parse(new InputSource(SourceUrl.openStream()));

    } catch (IOException e) {
        e.printStackTrace();
    } catch (Exception e) {
        System.out.println(" XMLParsing error is : " + e);
    }

    urlList = XMLParser.urlList;
    return urlList;
}// end of parseurl
我提供的url是
sourceUrl=新URL(“文件://C:/Users/raghu/Desktop/aero/products.xml”); 同样,我也以同样的方式拥有资源路径

file://C:/Users/raghu/Desktop/aero/"resource sub folders"
我得到以下错误

     D/dalvikvm(  118): GC_EXPLICIT freed 80K, 52% free 2864K/5895K, external 2155K/2537K, paused 82ms
W/System.err( 1078): java.io.IOException: Unable to connect to server: null
W/System.err( 1078):    at org.apache.harmony.luni.internal.net.www.protocol.ftp.FtpURLConnection.connect(FtpURLConnection.java:203)
W/System.err( 1078):    at org.apache.harmony.luni.internal.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:300)
W/System.err( 1078):    at java.net.URL.openStream(URL.java:645)
W/System.err( 1078):    at com.omkarsoft.ImagePortofolio.ImagePortofolio.parseUrl(ImagePortofolio.java:178)
W/System.err( 1078):    at com.omkarsoft.ImagePortofolio.ImagePortofolio.onCreate(ImagePortofolio.java:76)
W/System.err( 1078):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
W/System.err( 1078):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
W/System.err( 1078):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
W/System.err( 1078):    at android.app.ActivityThread.access$1500(ActivityThread.java:117)
W/System.err( 1078):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
W/System.err( 1078):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 1078):    at android.os.Looper.loop(Looper.java:123)
W/System.err( 1078):    at android.app.ActivityThread.main(ActivityThread.java:3683)
W/System.err( 1078):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 1078):    at java.lang.reflect.Method.invoke(Method.java:507)
W/System.err( 1078):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
W/System.err( 1078):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)

您需要将该文件推送到Android emulator文件系统中。例如

adb push C:/Users/raghu/Desktop/aero/products.xml /sdcard/products.xml

并使用后一种路径。

您无法从模拟器内的桌面访问文件。因此,您需要将任何您想要使用的文件推送到SD卡(或手机存储器)上。难道没有办法完成上述操作吗?如果没有,你能告诉我如何将资源推入SD卡,并给出xml文件中资源的路径以及应用程序中xml文件本身的路径吗?我不能正确理解你的最后一个问题(在上面的评论中)。但是,
adb push
是将文件推入SD卡的方式。同样,也可以推送其他资源。或者,您可以使用DDMS->“文件资源管理器”工具。很抱歉让您难以理解?我有一个文件夹aero,它包含xml文件和其他包含图像的文件夹。我必须更改xml中这些文件的路径。那么,我应该为xml文件中的这些图像提供什么路径呢。此外,SD卡中xml文件的路径是什么。除了将文件作为apk的一部分保存(请参阅),您还可以将其存储在应用程序可以访问的任何位置。我建议你仔细阅读,特别是关于内部和外部存储的部分。希望这能有所帮助。尝试将此xml存储在资产中并尝试解析&您给出的路径“C:/…”可能不合适