Comment obtenir l'heure et la date actuelles dans une application Android ?
Réponses
Trop de publicités?Pour une horloge de 12 heures avec le suffixe "AM" ou "PM" :
DateFormat df = new SimpleDateFormat("KK:mm:ss a, dd/MM/yyyy", Locale.getDefault());
String currentDateAndTime = df.format(new Date());
Pour une horloge de 24 heures avec le suffixe "AM" ou "PM" :
DateFormat df = new SimpleDateFormat("HH:mm:ss a, dd/MM/yyyy", Locale.getDefault());
String currentDateAndTime = df.format(new Date());
Pour supprimer le suffixe, il suffit d'enlever le "a" écrit avec le format de l'heure.
//currentTimeMillis is System.currentTimeMillis()
long totalSeconds = currentTimeMillis / 1000;
int currentSecond = (int)totalSeconds % 60;
long totalMinutes = totalSeconds / 60;
int currentMinute = (int)totalMinutes % 60;
long totalHours = totalMinutes / 60;
int currentHour = (int)totalHours % 12;
TextView tvTime = findViewById(R.id.tvTime);
tvTime.setText((currentHour + OR - TIME YOU ARE FROM GMT) + ":" + currentMinute + ":" + currentSecond);
String DataString = DateFormat.getDateInstance(DateFormat.SHORT).format(Calendar.getInstance().getTime());
Pour obtenir la chaîne formatée en date courte dans le format localisé de l'unité.
Je ne comprends pas pourquoi tant de réponses utilisent des formats de date et d'heure codés en dur alors que l'OS/Java fournit une localisation correcte de la date et de l'heure. N'est-il pas préférable de toujours utiliser les formats de l'appareil plutôt que ceux du programmeur ?
Il permet également la lecture des dates dans des formats localisés :
DateFormat format = DateFormat.getDateInstance(DateFormat.SHORT);
Date date = null;
try {
date = format.parse(DateString);
}
catch(ParseException e) {
}
C'est alors à l'utilisateur qui définit le format pour afficher les dates et l'heure, et non à vous. Indépendamment des langues, etc., il existe différents formats dans différents pays ayant la même langue.
8 votes
43 réponses ! Si beaucoup d'entre elles étaient bonnes lorsqu'elles ont été écrites, la bonne réponse à utiliser en 2018 est la suivante . aquí .
1 votes
Fait amusant : tous les développeurs d'Android sont passés par là.