Преобразование времени в java

#java

#java

Вопрос:

Как я могу преобразовать время unix в Java?

Получите это :

 ~#>date -d @1305176400
Thu May 12 00:00:00 CDT 2011
  

Но в java

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

1. В какой тип вы хотите преобразовать? в строковый тип?

Ответ №1:

 String date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss")
                  .format(new java.util.Date (epoch*1000));
  

Смотрите: http://www.epochconverter.com

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

1. Формат даты по умолчанию соответствует его требованию, насколько я могу видеть.

2. Похоже, что так, но я подумал, что было бы неплохо привести ему более конкретный пример, а также ссылку на дальнейшее изучение 🙂

Ответ №2:

Вы имеете в виду вот так?

 Date d = new Date(1305176400 * 1000L);
System.out.println(d);
  

С принтами

 Thu May 12 06:00:00 BST 2011
  

Ответ №3:

Посмотрите на класс SimpleDateFormat . Документация описывает, как создать правильный формат, который можно использовать для преобразования даты в строку и наоборот.

Ответ №4:

 Date date = new Date(msSinceEpoch);  //note: input is ms since epoch, not seconds
String s = DateFormat.getDateTimeInstance().format(date);
  

это обеспечит соответствие форматирования вашему языку по умолчанию.