RSS/Atom操作ライブラリROME の DateParser クラスを使うとラクラク。
サンプルコード
import java.util.Date;
import com.sun.syndication.io.impl.DateParser;
public class RomeDateParserSample {
public static void main(String[] args) {
// RFC822
String rfc822_string = DateParser.formatRFC822(new Date());
System.out.println("rfc822_string");
System.out.println(rfc822_string);
System.out.println();
Date rfc822_date = DateParser.parseRFC822(rfc822_string);
System.out.println("rfc822_date");
System.out.println(rfc822_date);
System.out.println();
// W3CDTF (W3C-DTF)
String w3cdtf_string = DateParser.formatW3CDateTime(new Date());
System.out.println("w3cdtf_string");
System.out.println(w3cdtf_string);
System.out.println();
Date w3cdtf_date = DateParser.parseW3CDateTime(w3cdtf_string);
System.out.println("w3cdtf_date");
System.out.println(w3cdtf_date);
System.out.println();
// W3CDTF (W3C-DTF): YYYY-MM-DDThh:mm:ssTZD
Date w3cdtf_date2 = DateParser.parseW3CDateTime("2008-12-19T18:55:00+09:00");
System.out.println("w3cdtf_date2");
System.out.println(w3cdtf_date2);
System.out.println();
// Date
Date date = DateParser.parseDate("2008-12-19T18:55:00+09:00");
System.out.println("date");
System.out.println(date);
System.out.println();
}
}
出力結果
rfc822_string
Fri, 19 Dec 2008 13:07:57 GMT
rfc822_date
Fri Dec 19 22:07:57 JST 2008
w3cdtf_string
2008-12-19T13:07:58Z
w3cdtf_date
Fri Dec 19 22:07:58 JST 2008
w3cdtf_date2
Fri Dec 19 18:55:00 JST 2008
date
Fri Dec 19 18:55:00 JST 2008
参考
-rome: ROME: RSS/Atom syndication and publishing tools
-日付の表記に関するノート
tags: zlashdot Java Java
Posted by NI-Lab. (@nilab)