SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'") mit Z-Datumszeichenfolgenformat
Wenn Sie den SimpleDateFormat-Konstruktor verwenden, haben Sie das Datumsformat auf festgelegt „yyyy-MM-dd'T'HH:mm:ss'Z'“. Das Zeichen „Z“ am Ende der Formatzeichenfolge gibt an, dass Datum/Uhrzeit in der UTC/GMT-Zeitzone liegen. Sie sind jedoch auf ein Problem gestoßen, bei dem in der Ausgabe die IST-Zeitzone anstelle von GMT/UTC angezeigt wird.
Dies tritt auf, weil Sie die Zeitzone für das SimpleDateFormat-Objekt nicht explizit festgelegt haben. Während das Zeichen „Z“ ein Datum in der UTC/GMT-Zeitzone angibt, passt es das Datums-/Uhrzeitobjekt nicht automatisch an diese Zeitzone an. Um sicherzustellen, dass die richtige Zeitzone angewendet wird, müssen Sie die Zeitzone mithilfe der setTimeZone-Methode festlegen.
Lösung:
Um dieses Problem zu beheben, können Sie die Zeitzone explizit festlegen Zeitzone auf GMT/UTC umstellen, indem Sie den folgenden Code verwenden:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
Durch explizites Festlegen der Zeitzone stellt das SimpleDateFormat-Objekt die genau dar Geben Sie Datum/Uhrzeit in der GMT/UTC-Zeitzone ein und die Ausgabe zeigt die korrekte Uhrzeit an.
Das obige ist der detaillierte Inhalt vonWarum zeigt „SimpleDateFormat('yyyy-MM-dd'T'HH:mm:ss'Z'')` IST anstelle von GMT/UTC an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!