Подтвердить что ты не робот

Преобразование из формата Long to date

Я хочу преобразовать значение Long в String или Date в этом формате dd/mm/YYYY.

У меня это значение в длинном формате: 1343805819061.

Можно ли преобразовать его в формат даты?

Спасибо.

4b9b3361

Ответ 1

Для этого вы можете использовать нижнюю строку кода. Здесь timeInMilliSecond является длинным значением.

 String dateString = new SimpleDateFormat("MM/dd/yyyy").format(new Date(TimeinMilliSeccond));

Или вы также можете использовать код ниже.

 String longV = "1343805819061";
 long millisecond = Long.parseLong(longV);
 // or you already have long value of date, use this instead of milliseconds variable.
 String dateString = DateFormat.format("MM/dd/yyyy", new Date(millisecond)).toString();

Ссылка: - DateFormat и SimpleDateFormat

P.S. Измените формат даты в соответствии с вашими потребностями.

Ответ 2

Вы можете использовать метод setTime для экземпляра Date или конструктора Date (long);

setTime(long time) 
      Sets this Date object to represent a point in time that is time milliseconds after January 1, 1970 00:00:00 GMT.

Date(long date) 
      Allocates a Date object and initializes it to represent the specified number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT

Затем используйте простой форматор даты

см. http://docs.oracle.com/javase/1.4.2/docs/api/javax/swing/text/DateFormatter.html

Ответ 3

java.util.Date dateObj = new java.util.Date(timeStamp);

Здесь timeStamp - ваше длинное целое число, которое на самом деле является меткой времени в миллисекундах, вы получаете объект даты java, теперь вы можете преобразовать его в строку этим

SimpleDateFormat dateformatYYYYMMDD = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat dateformatMMDDYYYY = new SimpleDateFormat("MMddyyyy");

StringBuilder nowYYYYMMDD = new StringBuilder( dateformatYYYYMMDD.format( dateObj ) );
StringBuilder nowMMDDYYYY = new StringBuilder( dateformatMMDDYYYY.format( dateObj ) );