Проблемы с преобразованием обратно из int в DateTime - PullRequest
1 голос
/ 02 апреля 2012

Я возвращаю данные из базы данных sqlite3, которые некоторые другие написали. Я пытаюсь получить дату и время. Чтобы сохранить его в БД, я конвертировал дату и время в одно целое. используя эту строку

  int currentTime=(int) ((newTime).toMillis(true) / 1000);

Я могу получить данные как целое число, но не могу понять, как преобразовать число обратно в Дата и время. В настоящее время БД возвращает int 13333380180, я пытаюсь преобразовать его в сегодняшнюю дату и время.

Ответы [ 2 ]

4 голосов
/ 02 апреля 2012
long yourmilliseconds = 13333380180;
SimpleDateFormat sdf = new SimpleDateFormat("MMM dd,yyyy HH:mm");

Date resultdate = new Date(yourmilliseconds);
System.out.println(sdf.format(resultdate));

Используйте приведенный выше код для конвертации

0 голосов
/ 02 апреля 2012

Получаемое вами число - это количество миллисекунд, прошедших с 1 января 1970 года. Это стандартный, последовательный способ представления даты и времени на ряде платформ.

Хотя в SQLite значение является целым числом, целые числа SQLite могут иметь длину до 64 бит. Таким образом, возвращаемое вам значение должно рассматриваться как long в Java. Вы можете преобразовать его в объект Java Date простым способом: new Date(currentTime).

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