Java中的日期处理工具DateTime_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java中的日期处理工具DateTime

Java中的日期处理工具DateTime

 2013/11/26 12:36:56  dyy_gusi  程序员俱乐部  我要评论(0)
  • 摘要:在java中,可以使用joda提供的类和方法处理。首先,在java中有两个和日期相关的对象:java.util.Date和java.util.CalendarDate的常用方式:DatejdkDate=newDate();intyear=jdkDate.getYear();intmonth=jdkDate.getMonth();intday=jdkDate.getDate();inthour=jdkDate.getHours();intminute=jdkDate.getMinutes()
  • 标签:工具 Java

?

在java中,可以使用joda提供的类和方法处理。
首先,在java中有两个和日期相关的对象:java.util.Date和java.util.Calendar
Date的常用方式:

class="java" name="code">Date jdkDate = new Date();

int year = jdkDate.getYear();
int month = jdkDate.getMonth();
int day = jdkDate.getDate();
int hour = jdkDate.getHours();
int minute = jdkDate.getMinutes();
int second = jdkDate.getSeconds();

jdkDate = new Date(year, month, day, hour, minute, second);

DateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
String dateStr =format.format(jdkDate);
		
System.out.println(dateStr);

?Calendar的常用方式:

Calendar calendar = Calendar.getInstance();
calendar.set(2000, Calendar.JANUARY, 1, 0, 0, 0);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);

Date jdkDate = calendar.getTime();

String dateStr = format.format(jdkDate);

System.out.println(dateStr);

?但是这两个对象处理日期的时候,都有点麻烦。我们可以利用第三方的对象处理日期时间。
DateTime的常用方式:

// 新建一个时间,然后对该时间操作,并且格式化输出
DateTime dateTime = new DateTime(2011, 11, 11, 11, 11, 11);
dateTime = dateTime.plusDays(2);
dateTime = dateTime.plusHours(2);
dateTime = dateTime.plusYears(2);
System.out.println(dateTime.toString("yy/MM/dd HH:mm:ss EE"));

//一当前时间点,新建一个时间,
dateTime = new DateTime();
dateTime = dateTime.minusSeconds(1);
dateTime = dateTime.minusMinutes(1);
dateTime = dateTime.minusHours(1);
System.out.println(dateTime.toString("yy/MM/dd HH:mm:ss EE"));

//DateTime转换为Calendar
Calendar calendar = dateTime.toCalendar(new Locale("zh", "ZH"));
System.out.println(calendar.get(Calendar.YEAR) + "-" + calendar.get(Calendar.MONTH) + "-" + calendar.get(Calendar.DAY_OF_MONTH));

//DateTime转换为jdk的Date
DateFormat df = null;
Date jkdDate = dateTime.toDate();
df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(df.format(jkdDate));

?当然,这只是一个最常用的DateTime类的最简单的用法,还有其他的类的其他用法。

我个人觉得这个东西好用的最大特点是可以和jdk中的Date和Calendar互相转换,提高了他的可用性。

?

下载地址:http://sourceforge.net/projects/joda-time/files/joda-time/2.0/

更专业的讲解:http://www.ibm.com/developerworks/cn/java/j-jodatime.html

发表评论
用户名: 匿名