我想用名字显示几个月.所以我正在使用JODA.jar
这是我的代码:
public static void main(String[] args) {
String date1 = "2013-21-01 14:00:00";
String date2 = "2013-01-01 14:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.ENGLISH);
Date date11, date22;
try {
date11 = sdf.parse(date1);
System.out.println("Date : " +date11);
date22 = sdf.parse(date2);
System.out.println("Date : " +date22);
DateTime dt1 = new DateTime(date11);
String monthName1 = dt1.monthOfYear().getAsText(Locale.ENGLISH);
DateTime dt2 = new DateTime(date22);
String monthName2 = dt2.monthOfYear().getAsText(Locale.ENGLISH);
System.out.println("String1 : " +monthName1+" "+dt1.getYear());
System.out.println("String2 : " +monthName2+" "+dt2.getYear());
}
catch (ParseException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
在第一次约会时,我把21个像月份一样,这是不可能的.但我在控制台中有这个:
Date : Mon Sep 01 14:00:00 GMT+01:00 2014
Date : Tue Jan 01 14:00:00 GMT+01:00 2013
String1 : September 2014
String2 : January 2013
Run Code Online (Sandbox Code Playgroud)
怎么会这样?通常它不应该显示第一个日期,只是正确的日期,对吧?
它目前正在进入下一年.
21 - 12 = 9 = September
Run Code Online (Sandbox Code Playgroud)
因此它不会翻转,只是让它不宽松
sdf.setLenient(false);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
197 次 |
| 最近记录: |