2017-06-09 3 views
0

PSTゾーンで時刻を表示しようとしました。タイムゾーンPDTに時間を埋め込んだフォーマットが見つかりましたが、これが冬の間にPSTに変わるかどうかを知りたいと思います。冬期にPDTがPSTに変更されますか?

これはコードの外観です。

06/09/17 07:44 AM PDT 
+1

OSの時刻を変更して見つけてください:) –

答えて

1

あなたはPSTゾーンで、常にそれを表示したい場合は、あなたではなく、デフォルトを使用するよりも下のを使用することができます。

public static final String OUTPUT_FORMAT_STD_DATE6_TIMEZONE = "MM/dd/yy hh:mm a z"; 

public static String convertUTC(String strDate, String inputFormat, String outputFormat) { 
    String displayDateString = null; 

    try { 
     DateFormat inFormat = new SimpleDateFormat(inputFormat); 
     inFormat.setTimeZone(TimeZone.getTimeZone("UTC")); 
     Date date = inFormat.parse(strDate); 

     DateFormat outFormat = new SimpleDateFormat(outputFormat); 
     outFormat.setTimeZone(TimeZone.getDefault()); 

     displayDateString = formatDate(date, outputFormat); 
    } catch (ParseException pe) { 
     log.error("DateUtil.convertUTC :Parse exception while parsing,"+strDate+" using format :"+inputFormat) ; 
    } 

    return displayDateString; 
} 

public void endElement(String uri, String localName, String qName) throws SAXException { 
    if(EVENT.equalsIgnoreCase(qName)) { 
     auditEntries.add(entry); 
    } else if(LOG_TIME.equalsIgnoreCase(qName)) { 
     String time = content.toString(); 
     entry.setLogTime(DateUtils.convertUTC(time, "yyyy-MM-dd'T'HH:mm:ss", DateUtils.OUTPUT_FORMAT_STD_DATE6_TIMEZONE)); 
} 

時間は次のように表示されます。

TimeZone.getTimeZone("PST") 

私はあなたのシステムの時刻を変更しようとしていないと仮定しています。サーバー上で動作するためです。変更の有無は、アプリケーションを実行しているJVMのタイムゾーンがJVMフラグによって明示的にオーバーライドされていない場合、サーバーの構成によって異なります。答えは、コードがどこにあるかによって異なります。 PSTで時間を常に表示したい場合は、明示的に指定することをお勧めします。

+0

涼しいです。ありがとう。 – Mike

関連する問題