UNIXタイムスタンプを使用してデータベースに時刻/日付を保存しています。次に、特定の日にすべてのインスタンスを取得したいので、データベースにクエリを実行するために、その日の開始のタイムスタンプを計算する必要があります。
日付オブジェクトから日/月/年の値を mktime に渡し、時間と分をゼロに設定することで、php で同様のことを行いました。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;
}
ただし、これを実行したところ、次のようになりました。
2012 年 12 月 15 日(土)01:24:00 GMT
秒は正しいのに、時と分が違う??