6

以下のコードで生成された「2013-07-04T23:37:46.782Z」など、RFC 3339 用にフォーマットされた文字列として日付があるとします。

// This is our date/time
Date nowDate = new Date();
// Apply RFC3339 format using JODA-TIME
DateTime dateTime = new DateTime(nowDate.getTime(), DateTimeZone.UTC);
DateTimeFormatter dateFormatter = ISODateTimeFormat.dateTime();
String dateString = dateFormatter.print(dateTime);
System.out.println("Server side date (RFC 3339): " + dateString );
// Server side date (RFC 3339): 2013-07-04T23:37:46.782Z

JODA-TIME を使用して、文字列 "2013-07-04T23:37:46.782Z" から java.util.Date を作成したいと考えています。どうすればそれを達成できますか?

4

2 に答える 2

6

質問に対する実際の回答 (ヨリ: を使用するのは正しいですISODateTimeFormatが、コード/受け入れられた回答は、解析ではなく書式設定を行います):

public static java.util.Date Rfc3339ToDateThroughJoda(String dateString) {
    DateTimeFormatter dateFormatter = ISODateTimeFormat.dateTime();   
    DateTime dateTime = dateFormatter.parseDateTime(dateString);    
    return dateTime.toDate();
}
于 2014-08-13T11:28:22.957 に答える