【问题标题】:Able to parse RSS feed file in Java project, unable in Android能够在 Java 项目中解析 RSS 提要文件,在 Android 中无法解析
【发布时间】:2013-10-14 17:33:04
【问题描述】:

我在 Eclipse 中有一个 Java 项目,我在其中下载 CNN 技术 RSS feed,然后使用 SAX 解析并获取提要中的项目数。

//download file
URL url = new URL(address);
InputStream is = url.openStream();
FileOutputStream fos = new FileOutputStream("newsfeed.xml");

byte[] buffer = new byte[1024];
int bytesRead = is.read(buffer);
while (bytesRead != -1) {
    fos.write(buffer, 0, bytesRead);
    bytesRead = is.read(buffer);
}

fos.close();
is.close();

//read file
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
XMLReader reader = parser.getXMLReader();

RSSHandler handler = new RSSHandler();
reader.setContentHandler(handler);

FileInputStream fis = new FileInputStream("newsfeed.xml");
InputSource is = new InputSource(fis);
reader.parse(is);

但是,当我在 Android 中使用此代码时,我得到了解析器异常

reader.parse(is);

我在 Android 中更改的唯一代码是

//download file
FileOutputStream out = context.openFileOutput(FILE_PATH, Context.MODE_PRIVATE);

//read file
FileInputStream stream = context.openFileInput(FILE_PATH);

知道为什么会这样吗?或者如何解决?

我得到的确切错误是带有消息“在第 1 行,第 0 列:格式不正确(无效令牌)”的 SAXException

【问题讨论】:

    标签: java android xml rss saxparser


    【解决方案1】:

    试试这个..

    使用下面的网址

    http://iamvijayakumar.blogspot.in/2012/06/android-rss-feed-reader-example.html

    使用 AsyncTask 的带有 CustomAdapter 的 RSS 解析器

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 2014-08-26
      • 1970-01-01
      • 2011-09-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多