Comment obtenir l'heure actuelle sur Android?Comment obtenir l'heure actuelle
Quand j'utilise
int hours = java.sql.Time.this.getHours();
i obtenir l'erreur:
No enclosing instance of the type Time is accessible in scope
Comment obtenir l'heure actuelle sur Android?Comment obtenir l'heure actuelle
Quand j'utilise
int hours = java.sql.Time.this.getHours();
i obtenir l'erreur:
No enclosing instance of the type Time is accessible in scope
int hours = new Time(System.currentTimeMillis()).getHours();
MERCI !!! PERFEKT –
System.currentTimeMillis() return long et Time n'ont pas d'argument long! désolé mais ce code est faux. – mSafdel
ce code est correct, car la question concerne java.sql.Time qui a un constructeur approprié. – Thorstenvv
L'instance de la classe Calendar
est fixée à la date et l'heure.
Je ne comprends pas le bon moment –
Si vous voulez juste l'horodatage en cours, vous pouvez utiliser:
long millis = System.currentTimeMillis()
Vous pouvez également obtenir d'autres valeurs liées au temps, comme le temps de fonctionnement ou le temps total écoulé depuis le dernier démarrage (y compris le temps de sommeil) de android.os.SystemClock
.
Essayez ceci:
int hour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY);
public static final int HOUR_OF_DAY depuis: API Niveau 1 Numéro de champ pour et ECRIRE indiquant l'heure de la journée. HOUR_OF_DAY est utilisé pour l'horloge de 24 heures. Par exemple, à 10: 04: 15.250 PM le HOUR_OF_DAY est 22.
Mon échantillon préféré:
Time dtNow = new Time();
dtNow.setToNow();
int hours = dtNow.hour;
String lsNow = dtNow.format("%Y.%m.%d %H:%M");
String lsYMD = dtNow.toString(); // YYYYMMDDTHHMMSS
Calendar cal = Calendar.getInstance(); // get current time in a Calendar
alors vous pouvez faire beaucoup avec l'instance de calendrier, comme obtenir les heures ou le procès-verbal - comme:
int hour = cal.get(Calendar.HOUR_OF_DAY);
Ceci est recommandé lorsque vous devez localiser de nombreux endroits, et les données d'impression dans mult formats iple, ou faire des opérations sur les dates. Ajouter juste un peu à la réponse d'Andrew.
Ceci est actuellement la meilleure réponse que getHours()/getDate() etc ont été déprécié. – Ravi
La dernière partie du code incrémente l'heure si votre fuseau horaire est en mode d'heure d'été. Le HOUR_OF_DAY est au format 24 heures.
Calendar currentTime = Calendar.getInstance() ;
int hour = currentTime.get(Calendar.HOUR_OF_DAY) ;
int minute = currentTime.get(Calendar.MINUTE) ;
int second = currentTime.get(Calendar.SECOND) ;
long milliDiff = currentTime.get(Calendar.ZONE_OFFSET) ;
// Got local offset, now loop through available timezone id(s).
String [] ids = TimeZone.getAvailableIDs() ;
for (String id : ids)
{
TimeZone tz = TimeZone.getTimeZone(id) ;
if (tz.getRawOffset() == milliDiff)
{ // Found a match, now check for daylight saving
boolean inDs = tz.inDaylightTime(new Date()) ;
if (inDs) { hour += 1 ; }
if (hour == 25) { hour = 1 ; }
break ;
}
}
Voir cette http://stackoverflow.com/questions/2271131/display-current-time-and-date-in-android-application post – Ally