Looping durch Feed-Einträge mit Rom
Frage
Ich versuche, eine Schleife durch Atom-Feed-Einträge und erhalte die Titel-Attribut kann sagen, fand ich diese Artikel, habe ich versucht, diesen Code snipped:
for (final Iterator iter = feeds.getEntries.iterator();
iter.hasNext(); )
{
element = (Element)iter.next();
key = element.getAttributeValue("href");
if ((key != null) &&
(key.length() > 0))
{
marks.put(key, key);
}
//Don't have to put anything into map just syso title would be enough
}
Aber ich bekomme Ausnahme sagen:
java.lang.ClassCastException: com.sun.syndication.feed.synd.SyndEntryImpl kann nicht auf org.jdom.Element gegossen werden bei com.emir.altantbh.FeedReader.main (FeedReader.java:47)
Was habe ich falsch gemacht? Kann mir jemand zu einer besseren Tutorial direkt oder zeigen Sie mir, wo habe ich Fehler gemacht, ich brauche Wert Schleife durch Einträge und Extrakt Titel-Tag. danke
Lösung
SyndFeed.getEntries()
eine List
von SyndEntryImpl
zurückgibt. Sie können nicht von SyndEntryImpl
zu org.jdom.Element
werfen.
Sie können durch alle SyndEntry
laufen wie folgt:
for (final Iterator iter = feed.getEntries().iterator();
iter.hasNext(); )
{
final SyndEntry entry = (SyndEntry) iter.next();
String title = entry.getTitle();
String uri = entry.getUri();
//...
}
API Links
Sie können auch versuchen, diese wenn Sie mit Java 5.0 und höher:
for (SyndEntry entry : (List<SyndEntry>) feed.getEntries()) {
String title = entry.getTitle();
String uri = entry.getUri();
//...
}
Es ist nicht markiert Guss hier, aber es sollte auf der Grundlage der Spezifikation von getEntries()
sicher sein.