2012-05-23 3 views
2

현재 시간대와 시간대를 확인할 수 있습니다. 하지만 항상 내가 GMT+05:30 무엇입니까 시간대로Java IST에서 인쇄하는 방법

Wed May 23 11:01:08 GMT+05:30 2012 

인쇄. 대신이의 나는

SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z"); 

을 시도 IST

인쇄 할하지만 여전히 나는 시도했지만 욕망 출력 상을 못해서 여러 가지가 있습니다 GMT+05:30

TimeZone.getDefault().getDisplayName(true, TimeZone.SHORT); is also givine me GMT+05:30 

얻고있다. Calender을 사용했지만 IST을 인쇄 할 수 없습니다.

사람은 당신이 SimpleDateFormat를 사용하여 실제로 있어 어디

답변

4

당신은 표시하지 않은를 (심지어 내가 Indian standard time을 인쇄 할 그나마) 나 시간에 IST을 인쇄하는 방법을 알려 주시기 바랍니다 수 있습니다.

2012.05.23 AD at 11:18:08 IST 

참고 "IST"를 표시되지 TimeZone.getDefault()이라면 문제가 될 수 있다는 것을 :

내 컴퓨터에

import java.text.*; 
import java.util.*; 

class Test { 
    public static void main(String[] args) { 
     SimpleDateFormat sd = new SimpleDateFormat(
      "yyyy.MM.dd G 'at' HH:mm:ss z"); 
     Date date = new Date(); 
     // TODO: Avoid using the abbreviations when fetching time zones. 
     // Use the full Olson zone ID instead. 
     sd.setTimeZone(TimeZone.getTimeZone("IST")); 
     System.out.println(sd.format(date)); 
    } 
} 

출력 : 여기에 쇼 IST을하는 짧지 만 완전한 예입니다 시스템이 실제로

  • 를 시스템 시간대를 식별 할 할 수 있는지
    • 당신의 응 설치에 i18n에 대한 전체 표준 시간대 정보가 없습니다

    사용중인 Java 버전 및 플랫폼은 무엇입니까?

  • +0

    자바 1.6 및 윈도우 os –

    +0

    잘 작동합니다. 덕분에 많은 –

    +0

    하나 더 문제는 "나는 여기에 IST를 수정하고 싶지 않다. 그것은 EDT 또는 다른 뭔가가 될 수 있습니다. 어떻게합니까? –

    0

    잘못된 시간대 설정이있는 것 같습니다. 내가 TimeZone.setDefault(TimeZone.getTimeZone("GMT+05:30"));

    를 사용하는 경우 내가 2012.05.23 AD at 11:30:20 GMT+05:30를 얻을 수 있습니다 다음 코드는, 그러나 2012.05.23 AD at 11:30:20 IST

    TimeZone.setDefault(TimeZone.getTimeZone("IST")); 
    SimpleDateFormat f = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z"); 
    System.out.println(f.format(new Date())); 
    

    를 인쇄합니다.

    들어오는 내용은 동일합니다.