RSSフィードのpubDateの日付書式「Mon, 29 Mar 2010 04:34:00 +0000」を任意の日付フォーマットへ変換する。
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.http.impl.cookie.DateParseException;
import org.apache.http.impl.cookie.DateUtils;
/** RSSフィードの日付フォーマットパターン */
private String pattern[] = { DateUtils.PATTERN_RFC1123 };
// ItemからpubDateを取得してフォーマット
String pubdate = item.getPubdate().toString();
String formattedPubdate = "";
try {
Date date = DateUtils.parseDate(pubdate, pattern);
SimpleDateFormat sdf = new SimpleDateFormat("MMM d, yyyy 'at' HH:mm");
formattedPubdate = sdf.format(date);
} catch (DateParseException e) {
e.printStackTrace();
}
フォーマットした文字列はViewに設定するなどして表示する。 // item_pubdateに則ってTextView生成 TextView pubdateView = (TextView) view.findViewById(R.id.item_pubdate); pubdateView.setText(formattedPubdate);タイムゾーンの設定により、日付がパースされる結果は動的に変わる。
タイムゾーンをGMT+09:00に設定している場合とGMT+1:00に設定している場合とでは、パース後の日付情報が異なっている。DateUtilsのparseDateメソッド、便利ですねぇ。
0 件のコメント :
コメントを投稿