如何获得明天的日期时间,即以毫秒为单位的一天结束

时间:2014-05-13 15:25:18

标签: java android datetime timestamp

我需要知道明天的结束日期时间,以毫秒为单位。要以毫秒为单位获取当前日期时间,我们使用

long dateTimestamp = System.currentTimeMillis(); // 12/6/2014 7.50 PM

如果今天的日期是12/6/2014 7:50 PM,明天的日期是2014年6月13日,它将在晚上11:59结束。我需要这个毫秒。

3 个答案:

答案 0 :(得分:10)

以下是你明天结束的方式 -

Calendar cal = Calendar.getInstance(); //current date and time      
cal.add(Calendar.DAY_OF_MONTH, 1); //add a day
cal.set(Calendar.HOUR_OF_DAY, 23); //set hour to last hour
cal.set(Calendar.MINUTE, 59); //set minutes to last minute
cal.set(Calendar.SECOND, 59); //set seconds to last second
cal.set(Calendar.MILLISECOND, 999); //set milliseconds to last millisecond
long millis = cal.getTimeInMillis();

答案 1 :(得分:2)

这应该有效:

Calendar calendar = new GregorianCalendar();
calendar.setTime(dateTimestamp);
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
calendar.add(Calendar.DATE, 1);

calendar.getTime(); // retrieves msec time of the time set in calendar

答案 2 :(得分:2)

long currentTime = System.currentTimeMillis();
long endOfTomorrow = currentTime + DateUtils.DAY_IN_MILLIS
            + (DateUtils.DAY_IN_MILLIS - currentTime % DateUtils.DAY_IN_MILLIS);
相关问题