Les enregistrements sont enregistrés en fonction du fuseau horaire des États-Unis mais si je veux afficher le même enregistrement à l'utilisateur, il doit convertir l'heure de la date du serveur avec Zone) à la date de l'utilisateur avec le fuseau horaire de l'utilisateurComment convertir l'heure de la date d'un fuseau horaire à un autre fuseau horaire
Répondre
Si vous saisissez google "Java date change timezone" ou "Javascript date change timezone". Vous aurez un de vos résultats:
En Java (source: http://www.coderanch.com/t/417443/java/java/Convert-Date-one-timezone-another)
Date date = new Date();
DateFormat formatter = new SimpleDateFormat("dd MMM yyyy HH:mm:ss z");
formatter.setTimeZone(TimeZone.getTimeZone("CET"));
// Prints the date in the CET timezone
System.out.println(formatter.format(date));
// Set the formatter to use a different timezone
formatter.setTimeZone(TimeZone.getTimeZone("IST"));
// Prints the date in the IST timezone
System.out.println(formatter.format(date));
Javascript (source: http://www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/6016329)
// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {
// create Date object for current location
d = new Date();
// convert to msec
// add local time zone offset
// get UTC time in msec
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
// create new Date object for different city
// using supplied offset
nd = new Date(utc + (3600000*offset));
// return time as a string
return "The local time in " + city + " is " + nd.toLocaleString();
}
// get Bombay time
alert(calcTime('Bombay', '+5.5'));
//Convert date from one zone to another
/*
$zone_from='Asia/Kolkata';
$zone_to='America/Phoenix';
date_default_timezone_set($zone_from);
$convert_date="2016-02-26 10:35:00";
echo $finalDate=zone_conversion_date($convert_date, $zone_from, $zone_to);
*/
function zone_conversion_date($time, $cur_zone, $req_zone)
{
date_default_timezone_set("GMT");
$gmt = date("Y-m-d H:i:s");
date_default_timezone_set($cur_zone);
$local = date("Y-m-d H:i:s");
date_default_timezone_set($req_zone);
$required = date("Y-m-d H:i:s");
/* return $required; */
$diff1 = (strtotime($gmt) - strtotime($local));
$diff2 = (strtotime($required) - strtotime($gmt));
$date = new DateTime($time);
$date->modify("+$diff1 seconds");
$date->modify("+$diff2 seconds");
return $timestamp = $date->format("Y-m-d H:i:s");
}
TimeZone fromTimezone =TimeZone.getTimeZone(from);
TimeZone toTimezone=TimeZone.getTimeZone(to);
long fromOffset = fromTimezone.getOffset(calendar.getTimeInMillis());
long toOffset = toTimezone.getOffset(calendar.getTimeInMillis());
long convertedTime = calendar.getTimeInMillis() - (fromOffset - toOffset);
java.time
Les anciennes classes date-heure sont mal conçues, déroutantes et gênantes. Évite-les. Utilisez les classes modernes: le framework java.time intégré à Java 8 et versions ultérieures. Trouvez les ports de retour for earlier Java 6 & 7 et for Android.
Un Instant
est un moment sur le plan chronologique dans UTC.
Instant now = Instant.now();
Appliquer un fuseau horaire (ZoneId
) pour obtenir un ZonedDateTime
.
N'utilisez jamais les abréviations de zone de 3 à 4 lettres telles que EST
ou IST
. Ils ne sont ni standardisés ni uniques (!). Utilisez proper time zone names, construit dans un format continent/region
tel que Asia/Kolkata
, Pacific/Auckland
, America/Los_Angeles
.
ZoneId zoneId_Montreal = ZoneId.of("America/Montreal");
ZonedDateTime zdt_Montreal = ZonedDateTime.ofInstant(instant , zoneId_Montreal);
Appliquer un fuseau horaire différent pour générer une autre ZonedDateTime
ajustée à ce fuseau horaire. Appelez withZoneSameInstant
.
ZoneId zoneId_Paris = ZoneId.of("Europe/Paris"); // Or "Asia/Kolkata", etc.
ZonedDateTime zdt_Paris = zdt_Montreal.withZoneSameInstant(zoneId_Paris);
Si vous voulez revenir à UTC, demander un Instant
.
Instant instant = zdt_Paris.toInstant();
code pour obtenir Berlin Temps et le convertir en UTC temps
Calendar sc = Calendar.getInstance(TimeZone.getTimeZone("Europe/Berlin"));
String strt = null;
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'");
sf.setTimeZone(TimeZone.getTimeZone("Etc/UTC"));
sc.set(sc.get(Calendar.YEAR),sc.get(Calendar.MONTH), sc.get(Calendar.DATE),sc.get(Calendar.HOUR) , sc.get(Calendar.MINUTE));
strt = sf.format(sc.getTime());
System.out.println("Start :"+strt);
- 1. Convertir la date d'un fuseau horaire en fuseau horaire local
- 2. Convertir la date d'un fuseau horaire en un autre fuseau horaire en utilisant les abréviations de fuseau horaire
- 3. Convertir le fuseau horaire décalage horaire en fuseau horaire (militaire?)
- 4. remplacer fuseau horaire d'une date par un autre fuseau horaire, la date devrait être le même
- 5. facebook date fuseau horaire
- 6. Fuseau horaire date fuseau horaire problème dans le dojo
- 7. Fuseau horaire Nvd3 différent fuseau horaire
- 8. Modifier la valeur Date d'un fuseau horaire à un autre fuseau horaire
- 9. Convertir la date Jquery en fuseau horaire personnalisé par l'ID de fuseau horaire
- 10. Conversion d'une chaîne de date d'un fuseau horaire à un fuseau horaire différent
- 11. Convertir la date dans le fuseau horaire des préférences utilisateur en utilisant l'abréviation du fuseau horaire
- 12. Convertir une date de fuseau horaire dans le fuseau horaire du système dans iOS
- 13. convertir les valeurs locales de date, heure et fuseau horaire en utc fuseau horaire dans php
- 14. Convertir un horodatage Unix en fuseau horaire?
- 15. date Parsing avec fuseau horaire
- 16. .NET Décalage du fuseau horaire par nom de fuseau horaire
- 17. Date PHP avec fuseau horaire
- 18. Conversion de la date NSString avec 1 fuseau horaire en un objet NSDate avec un autre fuseau horaire
- 19. conversion PHP fuseau horaire
- 20. Synchronisation de fuseau horaire
- 21. Comment convertir un abréviation de décalage de fuseau horaire en identifiant officiel de fuseau horaire?
- 22. Problème de fuseau horaire
- 23. Conflit de fuseau horaire ou de fuseau horaire
- 24. fuseau horaire numérique Posix
- 25. Changement de fuseau horaire
- 26. Problèmes de fuseau horaire?
- 27. Comment obtenir le bon fuseau horaire (fuseau horaire du serveur) au format de date UTC
- 28. PHP: convertir le fuseau horaire d'un horodatage
- 29. question concernant fuseau horaire
- 30. comment obtenir fuseau horaire
Oi! Java et Javascript sont deux choses complètement différentes! – LouwHopley