2014-03-27 101 views

回答

55

BaseDateTime(包括DateTime)继承的任何对象具有方法

public long getMillis() 

按照API它:

获取日期时间瞬间的毫秒从1970-在Java划时代01-01T00:00:00Z。

所以工作的例子来获得,简直是:

new DateTime().getMillis()/1000 

为了完整起见,Unix Timestamp according to Wikipedia的定义:

Unix时间或POSIX时间,是用于描述时间瞬间的系统,定义为从00:00:00协调世界时(UTC),1970年1月1日星期四开始经过的秒数,不包括闰秒

+3

我认为这有点不对。 UNIX时间以秒为单位,但'getMillis'则以毫秒为单位。它应该是'getMillis/1000' – serejja

+1

正确,谢谢你的提示。据此编辑答案。 – reto

7

Java 8添加了一个用于处理日期和时间的新API。使用Java 8,您可以使用

long unixTimestamp = Instant.now()。getEpochSecond();

+7

这是关于Joda DateTime的问题,这与此有何关系? –

+0

@伊万,但如果你检查由reto给出的接受答案也与乔达日期时间无关 – navy

+4

是的,他使用并链接到joda的答案中的DateTime。 –