Conversion des horodatages Java en différents fuseaux horaires
En Java, les horodatages sont initialement en heure moyenne de Greenwich (GMT) par défaut. Cependant, lorsqu'il s'agit de saisies utilisateur provenant de différents fuseaux horaires, la conversion des horodatages vers le fuseau horaire spécifique d'un utilisateur devient nécessaire.
Considérez ce scénario : un utilisateur à l'heure normale de l'Est (EST) fournit un horodatage de « 5/1 /2008 18h12 (EST)". Le service Web attend l'horodatage en GMT, soit "01/05/2008 18:12 (GMT)".
Pour convertir avec précision les horodatages sur différents fuseaux horaires, un convertisseur personnalisé est nécessaire. Voici le code de convertToGmt() :
public static Calendar convertToGmt(Calendar cal) { Date date = cal.getTime(); TimeZone tz = cal.getTimeZone(); // Milliseconds since epoch GMT long msFromEpochGmt = date.getTime(); // Current offset from GMT at current date int offsetFromUTC = tz.getOffset(msFromEpochGmt); // Create a GMT calendar, set time, and add offset Calendar gmtCal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); gmtCal.setTime(date); gmtCal.add(Calendar.MILLISECOND, offsetFromUTC); return gmtCal; }
Cette méthode convertit le calendrier d'entrée en calendrier GMT, garantissant ainsi que l'horodatage est exact en GMT pour le service Web. Notez que cette méthode ne gère actuellement pas les changements d’heure d’été.
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!
if($res){
return json_encode(array('code'=>1,'msg'=>'成功'));
}else{
return json_encode(array('code'=>0,'msg'=>'失败'));
}
}
public function
}