Java의 epoch (1970-01-01)에서 밀리 초를 어떻게 얻습니까?


79

1970-01-01 UTC부터 지금까지 Java에서 UTC까지 밀리 초 수를 얻어야합니다.

또한 1970-01-01 UTC에서 다른 UTC 날짜 시간까지의 밀리 초 수를 얻을 수 있기를 원합니다.



1
연구 노력을 보여주지 않습니다.
jlordo

1
@PaulG-반대표의 가장 큰 이유는 연구 노력 입니다. 문제는 간단한 Google로 해결됩니다.
Brian Roach

답변:


164

어때요 System.currentTimeMillis()?

JavaDoc에서 :

보고: 현재 시간과 1970 년 1 월 1 일 자정 (UTC) 사이의 차이 (밀리 초)

Java 8java.time프레임 워크, 특히 Instant" ... 타임 라인에서 ... 포인트를 모델링하는 클래스 ... "를 도입합니다.

long now = Instant.now().toEpochMilli();

보고: 1970-01-01T00 : 00 : 00Z 시대 이후의 밀리 초 수 -즉 위와 거의 동일합니다. :-)

건배,


3
이 대답은 2012이고 Java 8이 주변에 없었기 때문에 좋은 대답입니다. Prezemek의 java.time 답변도 마찬가지로 좋습니다. 현재 Java 8 java.time 프레임 워크를 고려합니다.
Zack Jannsen

1
Edification : UTC 시간을 Milliseconds 단위로 가져 오는 몇 가지 방법을 테스트 한 결과 java.time.Instant.now (). toEpochMilli가 잘 작동하는 것으로 나타났습니다. 나는 이것을 ZonedDateTime.now (ZoneOffset.UTC) 메소드 옵션 (다른 게시물에서 옵션으로 보았습니다)과 비교했으며 예상대로 Java.time.Instant.now () 접근 방식은 내 컴퓨터에서 조금 더 빠릅니다 ... 30 회의 연속 실행에서 낮은 한 자릿수 밀리 초.
Zack Jannsen

System.currentTimeInMs()매 밀리 초마다 업데이트 되는 것은 아닙니다.
Caveman



0

시도해 볼 수도 있습니다.

  Calendar calendar = Calendar.getInstance();
  System.out.println(calendar.getTimeInMillis());

getTimeInMillis ()-epoch로부터 UTC 밀리 초 단위의 현재 시간


2
이 끔찍한 날짜 - 시간 클래스는 현대에 의해 년 전 대체되었다 java.time의 Bystrup 및 해킹-R에 의한 답변에 현대적인 솔루션을 참조하십시오 JSR 310에 의해 정의 된 클래스
바질 우르 큐

현대 솔루션을 사용하여 java.time.Instant이 대답이 대답
바질 우르 큐
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.