Java日期加减
程序员文章站
2022-06-26 08:01:13
...
用到的包:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
1、获取当前系统时间日期减1
Calendar date = Calendar.getInstance();
date.setTime(new Date());
date.set(Calendar.DATE, date.get(Calendar.DATE) - 1);
此时得到的date对象进行输出,结果为
java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2018,MONTH=7,WEEK_OF_YEAR=35,WEEK_OF_MONTH=5,DAY_OF_MONTH=27,DAY_OF_YEAR=240,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=2,HOUR_OF_DAY=14,MINUTE=10,SECOND=33,MILLISECOND=108,ZONE_OFFSET=28800000,DST_OFFSET=0]
里面的内容是非常多的,只需要时间即可
System.out.println(date.getTime());
// Mon Aug 27 14:10:33 CST 2018
还需要修改输出的格式,
// 按 2018-01-01 格式
SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
// 按 2018-01-01 00:00:00 格式
SimpleDateFormat dateFormat2 = new SimpleDateFormat("yyyy-MM-dd mm:HH:ss");
// 将时间转为需要的字符串
String timeStr1 = dateFormat.format(date.getTime());
String timeStr2 = dateFormat.format(date.getTime());
System.out.println(timeStr1);
System.out.println(timeStr2);
// 输出为
//2018-08-27
//2018-08-27 17:14:49
2、输入时间字符串转时间在减1
如输入的时间为字符串形式的 “2018-01-01 00:00:00”,先转为Date类型,然后和处理获取的系统时间一样。
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd mm:HH:ss");
try {
Date date = dateFormat.parse("2018-01-01 00:00:00");
} catch (ParseException e) {
e.printStackTrace();
}
Calendar date = Calendar.getInstance();
date.setTime(new Date());
date.set(Calendar.DATE, date.get(Calendar.DATE) - 1);
String timeStr = dateFormat.format(date.getTime());
System.out.println(timeStr);
上一篇: 万彩动画大师怎么制作镜头转换效果?
下一篇: AU音频出现问题怎么使用诊断窗口修复?