JAVA / GWT - DateFormat возвращается как 15.01.1970 - PullRequest
0 голосов
/ 16 августа 2010

Я пытаюсь разобрать временную метку в удобочитаемую строку даты, однако я получаю 1/15/1970 в качестве возврата.

//Here is my formatter
DateTimeFormat Format = DateTimeFormat.getFormat("MM/dd/yyyy");

//Here is my timestamp - SHOULD BE AUGUST 16TH, 2010
String date = "1281966439";

//Here is where I create the date, and format it
int intDate = Integer.parseInt(date);
Date eventDate = new Date(intDate);
String eventDateFinal = Format.format(eventDate);

//In this alert, I get 1/15/1970
Window.alert(eventFinal);

Я думал, что вместо миллисекунд можно использоватьсекунд, но когда я передаю ему значение в миллисекундах, я получаю исключение.

У кого-нибудь когда-нибудь возникала эта проблема?

Ответы [ 2 ]

2 голосов
/ 16 августа 2010

Конструктор Date занимает длинное, а не целое число, и это число миллисекунд с начала эпохи.

//Here is my formatter
DateTimeFormat Format = DateTimeFormat.getFormat("MM/dd/yyyy");

//Here is my timestamp - SHOULD BE AUGUST 16TH, 2010
String date = "1281966439000";

//Here is where I create the date, and format it
long longDate = Long.parseLong(date);
Date eventDate = new Date(longDate);
String eventDateFinal = Format.format(eventDate);

//In this alert, I get 1/15/1970
Window.alert(eventFinal);
1 голос
/ 16 августа 2010

Вы должны использовать миллисекунды для конструктора Дата (длинная дата) . И не забудьте использовать Long.parseLong (String s) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...