时间戳与格式化时间之间的相互转换
程序员文章站
2022-05-02 14:03:33
...
时间戳与格式化时间之间的相互转换
时间戳与格式化时间是开发过程中经常使用的,且它们之间的转化也比较频繁。
话不多说直接上代码:
//时间戳转换为格式化时间
public static String Transfer(long time) {
SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String t = s.format(time);
return t;
}
//格式化时间转化为时间戳
public static Date Transfer2(String time) {
return parse(time, "yyyy-MM-dd HH:mm:ss");
}
public static Date parse(String time, String format) {
DateFormat formatter = new SimpleDateFormat(format);
try {
return (Date) formatter.parse(time);
} catch (ParseException e) {
return null;
}
}
//主类调用测试一下
public static void main(String[] args) {
//测个6秒钟
for(int i = 0 ; i < 6 ; i++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
long t = System.currentTimeMillis();
System.out.println("当前时间戳:" + t);
System.out.println("时间戳转格式化:" + Tt0725.Transfer(t) );
long t2 = Tt0725.Transfer2( Tt0725.Transfer(t) ).getTime();
System.out.println("格式化转时间戳:" + t2);
System.out.print("\n");
}
}
输出结果:
如图所示,之间的转化没有问题。不过,细心的同学会发现一个问题,当前时间戳和转化后的时间戳最后三位数不一样,还有个特点,每次都是000,其实这是因为时间戳的单位是毫秒,而格式化时间单位是秒,所以将格式化时间转化为时间戳的时候,后三位自然为零!
上一篇: 【机器学习】线性回归