Ответ 1
Он будет работать.
long yourmilliseconds = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm");
Date resultdate = new Date(yourmilliseconds);
System.out.println(sdf.format(resultdate));
Я хочу использовать currentTimeMillis
два раза, поэтому я могу рассчитать продолжительность, но я также хочу отображать Time and Date в удобном для пользователя формате. У меня возникают проблемы, так как currentTimeMillis
подходит для вычисления, но я не вижу встроенную функцию для преобразования в красивое время или время/дату.
Я использую
android.text.format.DateFormat df = new android.text.format.DateFormat();
df.format("yyyy-MM-dd kk:mm:ss", new java.util.Date());
для создания приятного времени и даты, и мне в конечном итоге хотелось бы показать мое полученное значение currentTimeMillis
в android.text.format.DateFormat df = new android.text.format.DateFormat();
например.
android.text.format.DateFormat df = currentTimeMillis();
когда я пытаюсь получить
Несоответствие типов: невозможно преобразовать из long в DateFormat
Я пытался использовать кастинг, но не могу понять, как это сделать.
Он будет работать.
long yourmilliseconds = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm");
Date resultdate = new Date(yourmilliseconds);
System.out.println(sdf.format(resultdate));
В Android более простой способ
DateFormat.getInstance().format(currentTimeMillis);
Кроме того, Date устарела, поэтому используйте DateFormat класс.
DateFormat.getDateInstance().format(new Date(0));
DateFormat.getDateTimeInstance().format(new Date(0));
DateFormat.getTimeInstance().format(new Date(0));
Вышеуказанные три строки дадут:
Dec 31, 1969
Dec 31, 1969 4:00:00 PM
4:00:00 PM 12:00:00 AM
Date date = new Date(currentmilliseconds);
теперь объект даты имеет стандартную дату.
вы можете попробовать его