필자는 제 3 자의 lib를 통해 제가 날짜를 얻는 시스템을 가지고 있습니다. 입력 한 날짜가 1914-08-28이며 시간과 분이 마음에 들지 않는다는 사실을 알고 있습니다. 이 날짜를 고객에게 전달해야하며 1914-08-28T00 : 00과 같은 형식이어야합니다.java.util.Date의 해석
제 3 자 lib에서 얻은 것은 java.util.Date이고 디버깅하는 동안 나는 이상하게 보였던 것을 stumpled했습니다.
다음 이미지를보십시오. 나는 toString()
을 호출 할 때 Tu Aug 27, 22:00:00 CET 1914을 반환하지만 포함 된 cdate
을 보면 줄루 시간에있는 것처럼 보입니다. DateFormat의와 함께이 서식
나에게 1914-08-27T00을 제공합니다 : 00 :
java.text.DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'00:00");
내가 정말 여기에 기대하는 것은 내가 줄루 시간에 날짜를 가지고있다 (1914- 08-27T22 : 00Z) 1914-08-28T00 : 00 CET (다음날)와 같습니다.
다음 코드로 재생산 할 수 있습니다.
Calendar instance.set(1914, 7, 28, 22, 0);
instance.setTimeZone(TimeZone.getTimeZone("CET"));
Date d = instance.getTime();
지금 d
는 CET 시간과 줄루어 시간을 표시합니다 CDATE (가시 디버깅)을 표시하지만 서로 다른되지 않습니다. 기본 표준 시간대를 사용하면 CET 시간이 줄루 시간과 다를 것으로 예상됩니다.
설명이 무엇입니까?
'SimpleDateFormat'을 사용할 수 있습니다. –
이 동작을 나타내는 코드 조각을 제공하십시오. –
SimpleDateFormat을 사용하여 형식을 지정합니다. 그것은 8 월 27 일자로 형식을 지정합니다. 내가 이해하지 못하는 것은 그것이 줄레 (Zule) 시간에있는 것처럼 보입니다. 그리고 나서 8 월 28 일입니다. CET – homaxto