闲着没事,将一些时间的常用操作整理记录下来,以后会继续完善这个date的工具类。
package com.my.javabasic;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
public static void main(String[] args) {
System.out.println("1." + formatDate(new Date()));
System.out.println("2." + formatDate(new Date(), "yyyy-MM-dd"));
System.out.println("3." + getDateByString("2016-06-21 14:51:00"));
System.out.println("4." + checkDate(new Date(), 0, -1));
}
/**
*
* @Title: formatDate
* @Description: 将date类型的日期格式化为特定格式的string类型日期
* @param @param date
* @param @return 设定文件
* @return String 返回类型
* @throws
*/
public static String formatDate(Date date) {
if (date == null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.format(date);
}
/**
*
* @Title: formatDate
* @Description: 根据格式转换date类型的日期
* @param @param date
* @param @param pattern
* @param @return 设定文件
* @return String 返回类型
* @throws
*/
public static String formatDate(Date date, String pattern) {
if (date == null) {
return null;
}
SimpleDateFormat format = new SimpleDateFormat(pattern);
return format.format(date);
}
/**
*
* @Title: getDateByString
* @Description: 将date类型时间转化为date类型
* @param @param date
* @param @return 设定文件
* @return Date 返回类型
* @throws
*/
public static Date getDateByString(String date) {
if (date == null || "".equals(date.trim())) {
return null;
}
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date dt = null;
try {
dt = format.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
return dt;
}
/**
*
* @Title: getDateByString
* @Description: 将date类型时间转化为date类型
* @param @param date
* @param @param pattern
* @param @return 设定文件
* @return Date 返回类型
* @throws
*/
public static Date getDateByString(String date, String pattern) {
if (date == null || "".equals(date.trim())) {
return null;
}
DateFormat format = new SimpleDateFormat(pattern);
Date dt = null;
try {
dt = format.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
return dt;
}
/**
*
*
*********** 0 年<br>
*********** 1 月<br>
*********** 2日<br>
*********** 3时<br>
*********** 4分<br>
*
* @param @param date
* @param @param type
* @param @param num
* @param @return 设定文件
* @return Date 返回类型
* @throws
*/
public static Date checkDate(Date date, int type, int num) {
Date dt = null;
Calendar cal = Calendar.getInstance();
cal.setTime(date);
switch (type) {
case 0:
cal.add(Calendar.YEAR, num);
break;
case 1:
cal.add(Calendar.MONTH, num);
break;
case 2:
cal.add(Calendar.DATE, num);
break;
case 3:
cal.add(Calendar.HOUR_OF_DAY, num);
break;
case 4:
cal.add(Calendar.MINUTE, num);
break;
}
dt = cal.getTime();
return dt;
}
public static Date checkDate(String date, int type, int num, String pattern) {
DateFormat format = new SimpleDateFormat(pattern);
Date dt = null;
try {
dt = format.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
Calendar cal = Calendar.getInstance();
cal.setTime(dt);
switch (type) {
case 0:
cal.add(Calendar.YEAR, num);
break;
case 1:
cal.add(Calendar.MONTH, num);
break;
case 2:
cal.add(Calendar.DATE, num);
break;
case 3:
cal.add(Calendar.HOUR_OF_DAY, num);
break;
case 4:
cal.add(Calendar.MINUTE, num);
break;
}
dt = cal.getTime();
return dt;
}
}