欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

长整型转日期的坑

程序员文章站 2022-05-28 18:22:45
...

  在工作中,和第三方联调,对方的日期为了节省数据库的存储空间,用varchar类型存储的长整型数字。在转换展示发现竟然是2017年。

  后沟通,原来对方存的是Unix时间戳(Unix timestamp),在转换时需先乘以1000转成毫秒。实例如下:

package com.bijian.test;

public class DateTest {

	public static void main(String[] args) {
		
		long p = 1514447530l;
		String date = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date(p));
		System.out.println(date); //1970-01-18 20:40:47
		
		String date2 = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date(p * 1000));
		System.out.println(date2); //2017-12-28 15:52:10
		
		System.out.println(System.currentTimeMillis()); //1515936461590
	}
}

 

参考资料:http://tool.chinaz.com/Tools/unixtime.aspx

相关标签: java Date