java时间日期操作(最近一个月、最近一年。。。)

//日期相减,当前时间距某个时间过了多少天?
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = sdf.parse("2021-02-22 13:20:22");
Date date1 = new Date(System.currentTimeMillis());
long diff = date1.getTime()-date.getTime();
long days = diff/(1000*60*60*24);
// date转String
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
long curTime = System.currentTimeMillis();//获取当前时间
String startTime = sdf.format(new Date(curTime)); //date 转 String
//String 转时间和时间戳
String s = "2021-02-22 13:20:22"
Date date = sdf.parse(s);
long ts = date.getTime();
//获取当前日期
String now = LocalDate.now().toString();
String firstDay = "";
//开始时间
String startTime = "";
//结束时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String endTime = sdf.format(new Date(System.currentTimeMillis()));

Calendar cale = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

//最近一个月
cale.add(Calendar.MONTH, 0);
cale.set(Calendar.DAY_OF_MONTH, 1);
firstDay = format.format(cale.getTime());
startTime = firstDay + " 00:00:00";
//最近三个月
cale.add(Calendar.MONTH, -2);
cale.set(Calendar.DAY_OF_MONTH, 1);
firstDay = format.format(cale.getTime());
startTime = firstDay + " 00:00:00";
//最近六个月
cale.add(Calendar.MONTH, -5);
cale.set(Calendar.DAY_OF_MONTH, 1);
firstDay = format.format(cale.getTime());
startTime = firstDay + " 00:00:00";
//最近一年
cale.add(Calendar.YEAR, 0);
cale.set(Calendar.DAY_OF_YEAR, 1);
firstDay = format.format(cale.getTime());
startTime = firstDay + " 00:00:00";
//最近五年
cale.add(Calendar.YEAR, -4);
cale.set(Calendar.DAY_OF_YEAR, 1);
firstDay = format.format(cale.getTime());
startTime = firstDay + " 00:00:00";
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值