Java与Unix时间戳的相互转换详解
Java将Unix时间戳转换成指定格式日期,供大家参考,具体内容如下
当从服务器获取数据的时候,有时候获取的数据中的时间在很多的情况下是时间戳类似于这样1473048265,当然,我们不可能将这些数据以时间戳的形式展示给用户,通常情况,是要对这个时间戳进行一系列的处理加工,使其变成我们想要并习惯浏览的那种格式,那么怎么处理这些时间戳格式的数据呢?每个语言和框架都有自己的方法和方式。
下面将以java的方法来实现,废话少说直接撸码……
方法实现
/**
*Java将Unix时间戳转换成指定格式日期字符串
*@paramtimestampString时间戳如:"1473048265";
*@paramformats要格式化的格式默认:"yyyy-MM-ddHH:mm:ss";
*
*@return返回结果如:"2016-09-0516:06:42";
*/
publicstaticStringTimeStamp2Date(StringtimestampString,Stringformats){
if(TextUtils.isEmpty(formats))
formats="yyyy-MM-ddHH:mm:ss";
Longtimestamp=Long.parseLong(timestampString)*1000;
Stringdate=newSimpleDateFormat(formats,Locale.CHINA).format(newDate(timestamp));
returndate;
}
调用方法
TimeStamp2Date("1473048265","yyyy-MM-ddHH:mm:ss");
返回结果
2016-09-0516:06:42
将Java指定格式日期转换成Unix时间戳
/**
*日期格式字符串转换成时间戳
*
*@paramdateStr字符串日期
*@paramformat如:yyyy-MM-ddHH:mm:ss
*
*@return
*/
publicstaticStringDate2TimeStamp(StringdateStr,Stringformat){
try{
SimpleDateFormatsdf=newSimpleDateFormat(format);
returnString.valueOf(sdf.parse(dateStr).getTime()/1000);
}catch(Exceptione){
e.printStackTrace();
}
return"";
}
取得当前时间戳(精确到秒)
/**
*取得当前时间戳(精确到秒)
*
*@returnnowTimeStamp
*/
publicstaticStringgetNowTimeStamp(){
longtime=System.currentTimeMillis();
StringnowTimeStamp=String.valueOf(time/1000);
returnnowTimeStamp;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。