Я храню время/даты в базе данных, используя временную метку unix. Затем я хочу получить все экземпляры в определенный день, поэтому мне нужно вычислить временную метку для начала дня, чтобы запросить базу данных.
Я сделал аналогичную вещь в php, передав mktime значения для дня/месяца/года из объекта даты и установив час и минуту на ноль. Кажется, что в java/android не работают аналогичные функции (функции для получения определенных частей даты устарели)
Может ли кто-нибудь дать некоторые рекомендации по этому поводу? благодаря
Редактировать:
Хорошо, поэтому я понял, что это может сработать:
public static int startOfDay(Timestamp time) {
Calendar cal = dateToCalendar(new Date(time.getTime()));
cal.add(Calendar.HOUR_OF_DAY, -Calendar.HOUR_OF_DAY);
cal.add(Calendar.MINUTE, -Calendar.MINUTE);
cal.add(Calendar.SECOND, -Calendar.SECOND);
Log.i("Time", cal.getTime().toString());
return (int) cal.getTimeInMillis()/1000;
}
Однако когда я запустил это сейчас, я получил:
Сб Дек 15 01:24:00 GMT 2012
Секунды правильные, но час и минута неправильны?