java中如何获取时间戳的⽅法实例
前⾔
数字时间戳技术是数字签名技术⼀种变种的应⽤。是指格林威治时间1970年01⽉01⽇00时00分00秒(北京时间1970年01⽉01⽇08时00分00秒)起⾄现在的总秒数(引⽤⾃百度百科)
在java开发过程中经常会遇到统计某⼀天或是某⼀个⽉的数据,因此常常需要获取截取数据的两个时间戳(⽐如统计今天的数据,则需要获取⼀个开始时间为今天零点以及⼀个结束时间为明天零点),然后根据数据相关的时间是否在该时间区间内来判断是否将其计⼊统计数据中。
⼀、java获取时间戳
话不多说,⾸先我们先拿上⾯的例⼦说起吧。如何获取今天零点以及明天零点的两个时间戳。
public Long getToday(){
DateTime now = new DateTime();
return new Year(), MonthOfYear(), DayOfMonth(), 0, 0, 0, 0).getMillis();
}
public Long getTomorrow(){
DateTime now = new DateTime();
return new Year(), MonthOfYear(), DayOfMonth(), 0, 0, 0, 0).plusDays(1).getMillis();
}
上⾯的⽅法中⽤到了DateTime中的plusDays(),同理,你如果需要获取下个星期(年,⽉,时,分,秒,毫秒)前的时间戳,都有同样的plusYears(int X),plusMonths(int X)等等与之对应,如果要获取今天之前的就把传⼊⼀个负整数参数即可。
然⽽很多时候我们需要某个特定时间的时间戳,⽐如这个⽉5号14点23分6秒138毫秒的时间戳(这个时间并没有特殊的含义,随便选的)。
public Long getTime(){
Long now = new Date().getTime();
Calendar calendar = Instance();
calendar.setTimeInMillis(now);
calendar.set(Calendar.DAY_OF_MONTH, 5);
calendar.set(Calendar.HOUR, 14);
calendar.set(Calendar.MINUTE, 23);
calendar.set(Calendar.SECOND, 6);
calendar.set(Calendar.MILLISECOND, 138);
TimeInMillis();
}
再⽐如我们可能需要知道这个星期⼆的10点10分10秒的时间戳。
public Long getTime(){
Long now = new Date().getTime();
Calendar calendar = Instance();
calendar.setTimeInMillis(now);
calendar.set(Calendar.DAY_OF_WEEK, 2);
calendar.set(Calendar.HOUR, 10);
calendar.set(Calendar.MINUTE, 10);
calendar.set(Calendar.SECOND, 10);
java技术介绍百度百科TimeInMillis();
}
⼆、Java中两种获取精确到秒的时间戳的⽅法
Java中的时间戳的毫秒主要通过最后的三位来进⾏计量的,下⾯给⼤家分享从⽹上整理的两种不同的⽅式将最后三位去掉。⽅法⼀:通过String.substring()⽅法将最后的三位去掉
/**
* 获取精确到秒的时间戳
* @return
*/
public static int getSecondTimestamp(Date date){
if (null == date) {
return 0;
}
String timestamp = String.Time());
int length = timestamp.length();
if (length > 3) {
return Integer.valueOf(timestamp.substring(0,length-3));
} else {
return 0;
}
}
⽅法⼆:通过整除将最后的三位去掉
/**
* 获取精确到秒的时间戳
* @param date
* @return
*/
public static int getSecondTimestampTwo(Date date){
if (null == date) {
return 0;
}
String timestamp = String.Time()/1000);
return Integer.valueOf(timestamp);
}
以上就是我总结的⼀些获取时间戳的⽅法,如果平时需要快速进⾏时间与时间戳之间的转换,也可以在站长⼯具得到快速解决:
总结
以上就是这篇⽂章的全部内容了,希望本⽂的内容对⼤家的学习或者⼯作具有⼀定的参考学习价值,如果有疑问⼤家可以留⾔交流,谢谢⼤家对的⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论