2016-10-12 2 views
0

임 내 로컬 컴퓨터가언젠가 적은

긴 값을 제공합니다 같은 값 new Date(long) 사용 날짜에 long 값을 변환 할 수 있습니다 : - 1,481,394,600,000

날짜 : - 2016년 12월 11일 (실제 값)

날짜 : - 2016년 12월 10일 (I이 얻을)

는 그러나, 나는 내 로컬 설정에서 적절한 값을 얻는다. 그러나 원격 기계는 하루를 줄여줍니다. 두 시스템 모두 UTC 시간대입니다. 내 로컬 컴퓨터에서

+2

내가 같은 값을 얻을 LocalDateTime 및 ZoneDateTime를 사용해야 같이 (10/12) . 코드를 게시 할 수 있습니까? 또한 java.util.Date를 사용하고 있습니까? – dahui

+0

게시하기 전에 스택 오버플로를 검색하십시오. 이것은 이미 여러 번 다루어졌습니다. 팁 : java.time 밀리 초 신기원을 찾으십시오. 인스턴트 ZonedDateTime –

답변

1

실행합니다 :

import java.time.LocalDateTime; 
import java.time.Month; 
import java.time.ZoneOffset; 
import java.time.ZonedDateTime; 

public class Test { 

    public static void main(String[] args) { 

     LocalDateTime dateTime = LocalDateTime.of(2016, Month.DECEMBER, 11, 12, 30); 
     ZonedDateTime zdt = dateTime.atZone(ZoneOffset.UTC); 

     String dataInUTC = zdt.toString(); 
     System.out.println(dataInUTC); 
    } 
} 

결과 :

2016-12-11T12:30Z 

은 어쩌면 당신은

+0

FYI입니다.이 대답은 현재 레거시이며, 번거롭게 혼란스럽고 오래된 날짜 시간 클래스를 java.time 클래스로 대체했습니다. –

관련 문제