Как конвертировать минут штамп времени Unix для даты и времени в Java. Например, штамп времени 1372339860
соответствуют четверг, 27 июня 2013 13:31:00 по Гринвичу
.
Я хочу, чтобы преобразовать 1372339860 " до " 2013-06-27 13:31:00 по Гринвичу
.
Редактировать : на самом деле я хочу, чтобы это было по нашему времени по Гринвичу-4, так и будет 2013-06-27 09:31:00
.
Вы можете использовать SimlpeDateFormat в формат даты такой:
long unixSeconds = 1372339860;
// convert seconds to milliseconds
Date date = new java.util.Date(unixSeconds*1000L);
// the format of your date
SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss z");
// give a timezone reference for formatting (see comment at the bottom)
sdf.setTimeZone(java.util.TimeZone.getTimeZone("GMT-4"));
String formattedDate = sdf.format(date);
System.out.println(formattedDate);
Шаблон класса simpledateformat
берет если очень гибкое, вы можете проверить в javadocs все вариации можно использовать для того чтобы произвести различное форматирование на основе моделей вы напишите конкретный "дата". http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
методов gettime()
метод, который возвращает количество миллисекунд с ТОЦ, то необходимо дать В класса simpledateformat
часовой пояс формат даты правильно согласно вашему часовому поясу, в противном случае он будет использовать часовой пояс по умолчанию для JVM (который, если хорошо настроить, будет так или иначе право)В Java 8 представляет мгновенный.ofEpochSecond
метод программа для создания [МиГ
][2] от метку времени Unix, это может тогда быть преобразован в ZonedDateTime
и, наконец, форматируется, например:
final DateTimeFormatter formatter =
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
final long unixTime = 1372339860;
final String formattedDtm = Instant.ofEpochSecond(unixTime)
.atZone(ZoneId.of("GMT-4"))
.format(formatter);
System.out.println(formattedDtm); // => '2013-06-27 09:31:00'
Я думал, что это может быть полезно для людей, которые используете Java 8.
[2]: https://docs.oracle.com/javase/8/docs/api/java/time/Instant.html на "мгновенный документации и"
Вам нужно преобразовать его в миллисекундах путем умножения метка на 1000:
java.util.Date dateTime=new java.util.Date((long)timeStamp*1000);