2016-07-15 7 views
1
DateTime time=DateTimeFormat.forPattern("yyyy-ww").parseDateTime("2013-01"); 

DateTimeFormatorg.joda.time.format.DateTimeFormatである。weekyearで日付を解析すると間違った年が返されるのはなぜですか?

上記を実行すると、時間は2013-12-30T00:00:00.000 になります。間違っていますか?これはバグですか?私はそれが2013年の最初の週になると期待しています。

+0

代わりにどんな価値がありますか?どうして? –

+0

2013年の第1週の日付 –

+0

2013-02は2013-01-07を提供しますので、2012-12-31 –

答えて

2

hereを参照してください。

w、週の週、パターンレターはx、週単位で使用することを意味します。 javadoc of DateTimeFormat

x  weekyear      year   1996 
w  week of weekyear    number  27 
から

DateTimeFormat.forPattern("xxxx-ww") 

にあなたのパターンを変更し

、あなたのLocaleによって、2013年の最初の週は2012年

に始まっ

2012-12-31T00:00:00.000-08:00 

に解析します

関連する問題