Come ottenere l'ora corrente in Android?Come ottenere l'ora corrente
Quando uso
int hours = java.sql.Time.this.getHours();
ottengo l'errore:
No enclosing instance of the type Time is accessible in scope
Come ottenere l'ora corrente in Android?Come ottenere l'ora corrente
Quando uso
int hours = java.sql.Time.this.getHours();
ottengo l'errore:
No enclosing instance of the type Time is accessible in scope
int hours = new Time(System.currentTimeMillis()).getHours();
GRAZIE PERFEKT !!! –
System.currentTimeMillis() restituisce long e Time non ha un argomento lungo! scusa ma questo codice è sbagliato. – mSafdel
questo codice è corretto, poiché la domanda riguarda java.sql.Time che ha un costruttore appropriato. – Thorstenvv
Se si desidera solo il timestamp corrente, è possibile utilizzare:
long millis = System.currentTimeMillis()
è anche possibile ottenere altri valori relativi al tempo come ad esempio il tempo di attività o tempo totale trascorso dall'ultimo avvio (compreso il tempo di sonno) da android.os.SystemClock
.
Prova questa:
int hour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY);
public static final int HOUR_OF_DAY dal: API livello 1 numero di campo per ottenere e impostare indicando l'ora del giorno. HOUR_OF_DAY viene utilizzato per le 24 ore. Ad esempio, alle 10: 04: 15.250 PM il HOUR_OF_DAY è 22.
Il mio campione preferito:
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
allora si può fare un sacco con l'istanza del calendario, come ottenere delle Ore o verbale - come:
int hour = cal.get(Calendar.HOUR_OF_DAY);
Questo è consigliato quando si deve localizzare a molti locali, e dei dati di stampa in mult iple formati, o fare operazioni su date.
Questa è attualmente la migliore risposta come getHours()/getDate() ecc. ammortizzati. – Ravi
Basta aggiungere un poco alla risposta di Andrew. La parte successiva del codice incrementa l'ora se il fuso orario è in modalità ora legale. HOUR_OF_DAY è in formato 24 ore.
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 ;
}
}
vedi questo post http://stackoverflow.com/questions/2271131/display-current-time-and-date-in-android-application – Ally