Question :
Conversion d'une date et d'une heure en GMT vers un autre fuseau horaire, comme GMT 13, nécessite de régler l'heure, de modifier éventuellement le fuseau horaire de l'horodatage initial et de formater l'heure avec le nouveau fuseau horaire. Cependant, tenter de régler l'heure en millisecondes entraîne l'utilisation du fuseau horaire de la machine locale.
Réponse :
Pour obtenir le résultat souhaité, les étapes suivantes sont recommandées :
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.TimeZone; // Create a Calendar object and set the initial timestamp Calendar calendar = Calendar.getInstance(); calendar.setTime(new Date(1317816735000L)); // Set the initial timezone to UTC (GMT) calendar.setTimeZone(TimeZone.getTimeZone("UTC")); // Create a SimpleDateFormat object with the desired date/time format SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z"); // Set the target timezone (GMT+13) sdf.setTimeZone(TimeZone.getTimeZone("GMT+13")); // Format the date/time with the new timezone String newZealandTime = sdf.format(calendar.getTime()); // Print the converted date/time System.out.println(newZealandTime);
En suivant ces étapes, vous pouvez régler avec succès l'heure, définir le fuseau horaire de l'horodatage initial, formater l'heure avec le nouveau fuseau horaire et renvoie une chaîne avec la date/heure convertie.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!