私はROMEライブラリでRSS/Atomフィードを解析しようとしています。私はJavaに新しいので、私はその複雑さの多くと調和していません。RSS/AtomをパーズするためのROME API
- それが彼らに出くわすようROMEは、自動的に別のフィードを処理するために、そのモジュールを使用しない、または私はそれらを使用するように依頼する必要がありますか?そうであれば、これに関するどんな方向性も。
- 正しい「ソース」にはどうすれば到達できますか?私は
item.getSource()
を使用しようとしていましたが、それは私に合っています。私は間違ったインターフェイスを使用していると思います。いくらかの方向性は高く評価されるだろう。
ここに私のコレクションのデータがあります。 私は問題を抱えている2つの領域を指摘しました。両方とも、フィードのソース情報を取得することを中心にしています。また、ソースでは、CNN、またはFoxNews、または著者ではなく誰でもが欲しい。 私の読書から判断すると、.getSource()
が正しい方法です。
List<String> feedList = theFeeds.getFeeds();
List<FeedData> feedOutput = new ArrayList<FeedData>();
for (String sites : feedList) {
URL feedUrl = new URL(sites);
SyndFeedInput input = new SyndFeedInput();
SyndFeed feed = input.build(new XmlReader(feedUrl));
List<SyndEntry> entries = feed.getEntries();
for (SyndEntry item : entries){
String title = item.getTitle();
String link = item.getUri();
Date date = item.getPublishedDate();
Problem here --> ** SyndEntry source = item.getSource();
String description;
if (item.getDescription()== null){
description = "";
} else {
description = item.getDescription().getValue();
}
String cleanDescription = description.replaceAll("\\<.*?>","").replaceAll("\\s+", " ");
FeedData feedData = new FeedData();
feedData.setTitle(title);
feedData.setLink(link);
And Here --> ** feedData.setSource(link);
feedData.setDate(date);
feedData.setDescription(cleanDescription);
String preview =createPreview(cleanDescription);
feedData.setPreview(preview);
feedOutput.add(feedData);
// lets print out my pieces.
System.out.println("Title: " + title);
System.out.println("Date: " + date);
System.out.println("Text: " + cleanDescription);
System.out.println("Preview: " + preview);
System.out.println("*****");
}
}
申し訳ありませんが、出力が悪いです。ここで書式設定を取得するにはどうすればよいですか?私はコードを問題なく再発行することができます。 – ButtersB