1. 日期格式与字符串类型的相互转化
Date转String:
public static String date2String(Date date){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
String format = sdf.format(date);
return format ;
}
String转Date:
public static Date string2Date(String date){
//创建sdf对象,指定日期格式类型
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
//sdf将字符串转化成java.util.Date
java.util.Date parse=null;
try {
parse = sdf.parse(date);
} catch (ParseException e) {
e.printStackTrace();
}
//java.util.Date转换成long
long time = parse.getTime();
//将long转换为java.sql.Date
Date date2 = new Date(time);
return date2;
}
2. 使用Calendar
获取与当前时间相隔一天的时间
@Test
public void testCalendar(){
Calendar calendar = Calendar.getInstance();
Date date = new Date();
System.out.println("当前时间: "+ DateCoverUtil.date2String(date));
calendar.setTime(date);
//前一天的时间
calendar.add(Calendar.DAY_OF_MONTH,-1);
System.out.println("前一天时间:"+DateCoverUtil.date2String(calendar.getTime()));
}
运行结果:
前一分钟
@Test
public void testCalendar02(){
Calendar calendar = Calendar.getInstance();
Date date = new Date();
System.out.println("当前时间: "+ DateCoverUtil.date2String(date));
calendar.setTime(date);
//前一分钟的时间
calendar.add(Calendar.MINUTE,-1);
System.out.println("前一分钟时间:"+DateCoverUtil.date2String(calendar.getTime()));
}
前一秒
@Test
public void testCalendar01(){
Calendar calendar = Calendar.getInstance();
Date date = new Date();
System.out.println("当前时间: "+ DateCoverUtil.date2String(date));
calendar.setTime(date);
//前一秒的时间
calendar.add(Calendar.SECOND,-1);
System.out.println("前一秒时间:"+DateCoverUtil.date2String(calendar.getTime()));
}
前一月
@Test
public void testCalendar03(){
Calendar calendar = Calendar.getInstance();
Date date = new Date();
System.out.println("当前时间: "+ DateCoverUtil.date2String(date));
calendar.setTime(date);
//前一月的时间
calendar.add(Calendar.MONTH,-1);
System.out.println("前一月时间:"+DateCoverUtil.date2String(calendar.getTime()));
}
前一年
@Test
public void testCalendar04(){
Calendar calendar = Calendar.getInstance();
Date date = new Date();
System.out.println("当前时间: "+ DateCoverUtil.date2String(date));
calendar.setTime(date);
//前一年的时间
calendar.add(Calendar.YEAR,-1);
System.out.println("前一年时间:"+DateCoverUtil.date2String(calendar.getTime()));
}