I have a date as long value
Вам нужно понимать дату, поскольку длинное значение - это абсолютное значение (UTC) времени в миллисекундах с начала эпохи, т. Е. «1 января 1970 г. 00:00:00». Это значение не содержит информации о часовом поясе. Теперь, если вы хотите отобразить это время в своем текущем часовом поясе, просто сделайте это:
Date dt = new Date(1327303085000l);
System.out.printf("Date: %s%n", dt);
Он печатает:
Date: Mon Jan 23 02:18:05 EST 2012
Обратите внимание, что когда он печатает дату, он автоматически печатает его с моим текущим часовым поясом.
Однако Если вы хотите, чтобы настраиваемое форматирование отображало вашу дату, вы можете взглянуть на класс DateFormat в Java.