System.currentTimeMillis() выдает неверный вывод android

#android

#Android

Вопрос:

когда я печатаю System.currentTimeMillis()

дайте мне :

 11-03 14:47:05.400: INFO/System.out(7579): date is :: 14475410111
  

Какова правильная процедура для получения полной даты со временем.?

Комментарии:

1. используйте new Date() . И вы видите, что System.currentTimeMillis() возвращает long чего вы ожидаете от этого метода?

Ответ №1:

Чтобы получить текущую дату и время в Android, вы можете использовать:

 Calendar c = Calendar.getInstance();
System.out.println("Current time => " c.getTime());
  

Вывод:

Текущее время => Чт Ноя 03 15:00:45 GMT 05:30 2011

К вашему сведению, как только у вас появится это время в объекте ‘c’, вы можете использовать класс SimpleDateFormat для получения даты / времени в желаемом формате.

Окончательное решение:

 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Sring formattedDate = df.format(c.getTime());     // c is Calendar object
System.out.println("========> formatted date => " formattedDate);
  

Вывод:
=======> форматированная дата => 2011-11-03 15:13:37

Комментарии:

1. да, очевидно, что вы можете сделать это с помощью класса SimpleDateFormat. Попробуйте

Ответ №2:

 Date now = new Date(System.currentTimeMillis());
  

Кстати : currentTimeMillis()

Возвращает текущее системное время в миллисекундах с 1 января 1970 года 00:00:00 UTC.

Ответ №3:

Да, это правильный способ получить текущее время и дату. после этого вам нужно преобразовать его в нужный формат.

 public static String getDateFromTimeStamp(String timeStamp){
        return new Date(Long.parseLong(timeStamp)).toString();
    }
  

Ответ №4:

Используйте класс Date.

(Что заставляет вас думать, что это неправильно? Вы запрашиваете время в миллисекундах.)

Ответ №5:

Используйте SimpleDateFormat