Вы можете использовать SimlpeDateFormat для форматирования даты, как это:
long unixSeconds = 1372339860;
// convert seconds to milliseconds
Date date = new Date(unixSeconds*1000L);
// the format of your date
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss z");
// give a timezone reference for formatting (see comment at the bottom)
sdf.setTimeZone(TimeZone.getTimeZone("GMT-4"));
String formattedDate = sdf.format(date);
System.out.println(formattedDate);
Шаблон, SimpleDateFormat
принимает, если очень гибкий, вы можете проверить в javadocs все варианты, которые вы можете использовать для создания различного форматирования на основе шаблонов, которые вы пишете, с учетом конкретных Date
. http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
- Поскольку
Date
обеспечивает getTime()
метод, который возвращает миллисекунды с момента EPOC, требуется, чтобы вы даете SimpleDateFormat
часовой пояс для форматирования даты правильно acording в ваш часовой пояс, в противном случае он будет использовать часовой пояс по умолчанию из виртуальная машина Java (который, если хорошо настроен будет в любом случае быть правами)
'DateTime независимо = новый DateTime (yourunixtimestampaslong * 1000L, DateTimeZone.UTC)', если вы используете [JodaTime] (HTTP://joda-time.sourceforge.net/). Или 'DateTime whatever = new DateTime (yourunixtimestampaslong * 1000L, DateTimeZone.forOffsetHours (-4));' для вашего второго примера. Javadoc [здесь] (http://joda-time.sourceforge.net/apidocs/index.html) – fvu
Формат SimpleDateFormat = новый SimpleDateFormat («dd-MM-yyyy HH: mm: ss»); –