Java の場合、jdom や ROME ライブラリを用いて、RSS/ATOM をパース(解析)することがあります。残念ながら、このライブラリを Android でそのまま利用しても実行途中でエラーになってしまい使用することができません。ROME は、Apache License 2.0 の元で配布されているオープンソースの Java ライブラリです。
そこで、Android 版 ROME を用います。
使い方は、簡単です。
SyndFeedInput input = new SyndFeedInput(); try { String xml = "<?xml version="1.0" encoding=\"utf-8\" ?><rdf:RDF xmlns=\"http://purl.org/rss/1.0/\">...</rdf:RDF>"; SyndFeed feed = input.build(new StringReader(xml)); for (Object obj : feed.getEntries()) { SyndEntry entry = (SyndEntry) obj; // ArrayAdapter に追加 } } catch (IllegalArgumentException ex) { ex.printStackTrace(); } catch (FeedException ex) { ex.printStackTrace(); } |