Reputation: 5143
I would like to get the current date with the time zeroed out in milliseconds.
Example, if it's 12:69pm today, I want to get the time in milliseconds for today's date with no time...meaning, the time just after midnight (one millisecond or 0 if that works).
I was using the Calendar object but can't seem to figure out how to zero out the time portion.
Upvotes: 13
Views: 5275
Reputation: 641
And without calendar:
long d = new Date().getTime();
int offset = TimeZone.getDefault().getOffset(d);
d = ((d + offset)/ 86400000l) * 86400000l - offset;
Upvotes: 1
Reputation: 31846
Here is how to zero the time of a calendar:
Calendar today = Calendar.getInstance();
today.set(Calendar.MILLISECOND, 0);
today.set(Calendar.SECOND, 0);
today.set(Calendar.MINUTE, 0);
today.set(Calendar.HOUR_OF_DAY, 0);
Upvotes: 16