在Big中将BigInt时间戳转换为Date?

时间:2015-06-29 09:15:47

标签: java java.util.date

我在网上搜索了一些关于BigInt数据转换到日期的搜索,而我发现了很多相同的问题但是它们似乎没有用。我的数据库中有13位数据 1435555326831 ,我认为这是UNIXTIME,现在我想将其转换为 yyyy-MM-dd HH:mm:ss 形式。谢谢

2 个答案:

答案 0 :(得分:4)

您可以先将号码转换为long(如果您收到BigInteger,则可以拨打BigInteger.longValue())。

然后你有两个选择。使用标准java.util.Date,您可以使用:

long millis = 1435555326831L;
Date d = new Date(millis);

然后,您可以使用SimpleDateFormat格式化日期以进行输出。

如果您可以使用Java 8新的Time API,您可以创建一个即时消息并将其转换为所需的时区(以下示例中的计算机时区):

Instant instant = Instant.ofEpochMilli(millis);
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println(fmt.format(instant.atZone(ZoneId.systemDefault())));

答案 1 :(得分:0)

您的数据在Unix时间戳上,您只需使用新的java.util.Date()进行转换即可 这是它的例子 Java: Date from unix timestamp