记录一下给定一个时间戳,Java获取这一天开始和结束时间的方法,主要还是没有系统的学习过Java时间相关的类和使用方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
public static Long getDailyStartTime(Long timeStamp, String timeZone) { Calendar calendar = Calendar.getInstance(); calendar.setTimeZone(TimeZone.getTimeZone(timeZone)); calendar.setTimeInMillis(timeStamp); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.MILLISECOND, 0); return calendar.getTimeInMillis(); }
public static Long getDailyEndTime(Long timeStamp, String timeZone) { Calendar calendar = Calendar.getInstance(); calendar.setTimeZone(TimeZone.getTimeZone(timeZone)); calendar.setTimeInMillis(timeStamp); calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); calendar.set(Calendar.MILLISECOND, 999); return calendar.getTimeInMillis(); }
|
关于TimeZone
的用法可以参考详解Java中的时区类TimeZone的用法_java_脚本之家
(jb51.net),获取默认TimeZone
可以使用TimeZone.getDefault().getID()
。
原文来自于Java获取当天、当前月、当前年(今年)的开始和结束时间戳
- 翎野 - 博客园