注意点:在时间的时候注意时区处理,TimeZone.getDefault().getRawOffset()如果在中国则是东8区(8*3600)。建议写成:TimeZone.getDefault().getRawOffset()
//当天日期
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
String today = simpleDateFormat.format(date.getTime());
System.out.println("当天日期" + today);
//1、当天凌晨(毫秒)
long daytime1 = simpleDateFormat.parse(today).getTime();
System.out.println("1、当天凌晨(毫秒)" + daytime1);
//2、当天凌晨(毫秒)
long current = System.currentTimeMillis();
long daytime2 = current-(current+ TimeZone.getDefault().getRawOffset())%(1000*3600*24);
System.out.println("2、当天凌晨(毫秒)" + daytime2);
//3、当天凌晨(毫秒)
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 0);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
long daytime3 = c.getTimeInMillis();
System.out.println("3、当天凌晨(毫秒)" + daytime3);
//4、当天凌晨(毫秒)
long now = System.currentTimeMillis() / 1000l;
long daySecond = 60 * 60 * 24;
long dayTime4 = (now - (now + 8 * 3600) % daySecond) * 1000 ;
System.out.println("4、当天凌晨(毫秒)" + dayTime4);
网友评论