Jak przekształcić currentTimeMillis do czytelnego formatu daty? [duplikat]
To pytanie ma już odpowiedź tutaj:
Chcę użyć currentTimeMillis
dwa razy, aby móc obliczyć czas trwania, ale chcę również wyświetlić czas i datę w formacie czytelnym dla użytkownika. Mam problem ponieważ currentTimeMillis
jest dobra do obliczeń ale nie widzę wbudowanej funkcji do Konwertuj Na nice time lub time/date.
Używam
android.text.format.DateFormat df = new android.text.format.DateFormat();
df.format("yyyy-MM-dd kk:mm:ss", new java.util.Date());
Za stworzenie ładnego czasu i daty, a to, co ostatecznie chciałbym zrobić, to pokazać moją wynikową currentTimeMillis
wartość w android.text.format.DateFormat df = new android.text.format.DateFormat();
Np.
android.text.format.DateFormat df = currentTimeMillis();
When I try I get
Type mismatch: cannot convert from long to DateFormat
Próbowałem użyć jakiegoś castingu, ale nie widzę, jak to osiągnąć.
2 answers
To zadziała.
long yourmilliseconds = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm");
Date resultdate = new Date(yourmilliseconds);
System.out.println(sdf.format(resultdate));
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-12 14:52:05
Jest prostszy sposób w Androidzie
DateFormat.getInstance().format(currentTimeMillis);
Ponadto Data jest przestarzała, więc użyj klasy DateFormat .
DateFormat.getDateInstance().format(new Date(0));
DateFormat.getDateTimeInstance().format(new Date(0));
DateFormat.getTimeInstance().format(new Date(0));
Powyższe trzy linie dadzą:
Dec 31, 1969
Dec 31, 1969 4:00:00 PM
4:00:00 PM 12:00:00 AM
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-12 17:54:52