无法解析XML文件,没有这样的文件或目录

时间:2017-05-16 19:47:43

标签: android xml-parsing

我正在尝试解析流量数据。这是我第一次尝试解析XML,所以请善待!

我有这段代码 -

SAXParserFactory parserFactory = SAXParserFactory.newInstance();
        SAXParser parser = null;
        try {
            parser = parserFactory.newSAXParser();
        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (SAXException e) {
            e.printStackTrace();
        }
        SAXHandler handler = new SAXHandler();
        try {
            parser.parse(new FileInputStream("http://m.highways.gov.uk/feeds/rss/AllEvents.xml"), handler);
        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

在我的清单中,我有 -

<uses-permission android:name="android.permission.INTERNET" />

但是当我在模拟器中运行应用程序时,它永远不会像位置那样请求权限。我得到的错误是 -

java.io.FileNotFoundException: http:/m.highways.gov.uk/feeds/rss/AllEvents.xml (No such file or directory)

为什么它错过了/后http:/?那是问题吗?试试网址,你会看到那里有数据。

我做错了什么? (我已搜索但只查找有关从存储卡读取的信息)

谢谢!

1 个答案:

答案 0 :(得分:1)

http://m.highways.gov.uk/feeds/rss/AllEvents.xml不是文件系统上的文件。它是Web服务器上托管的文档的URL。

或者:

  • 使用HTTP客户端API将XML下载到文件,然后解析文件,或

  • 使用HTTP客户端API获取直接传递给InputStream

  • parse()