0

Androidのデータベースに保存されている時間と現在のシステム時間を比較する方法は? 私はこのコードを使用します:

 public static long s ;
.
.
.
.

Time now = new Time();
 now.setToNow();
String query = "SELECT Cart_ID,Cart_Date from Tbl_Cart where Cart_ID="+lastId+" ";
         // String queryt = "SELECT Cart_Date from Tbl_Cart where Cart_ID="+lastId+" ";
          Cursor c = db.rawQuery(query, null);
           if (c != null && c.moveToFirst() ) {
               s = c.getLong(0);


           }

          if(s==now.setToNow())
{
...
}
4

3 に答える 3

0

このコードは、時間についても同じことができるデータ専用です。SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy");

    CalCurrentDate = Calendar.getInstance();
            // that will pass cureent date .
    Current_Date = dateFormat.format(CalCurrentDate.getTime());         

SQL クエリを使用して DB から日付と時刻を取得する:

Current_Date : 現在のデータとこのクエリによる比較。

selectQuery = "SELECT  * FROM MY_TABLE WHERE `Date`>='"+Current_Date+"'";

これで、このクエリをrawQuery()として実行できます。

于 2012-11-06T11:02:59.967 に答える
0

保存された時間がミリ秒単位の場合は、 と比較できますSystem.currentTimeMillis()。また、'==' との比較についても慎重に考えることができます。長い時間は急速に変化するため、システム時間と一致させるのは非常に困難です。ある時間枠で、より少ない/より長いか、または等しいかを探す方がよいでしょう。

于 2012-11-06T10:58:48.903 に答える
0

データベースにデータ時間を保存する方法によって異なります。

日時のように保存すると、個々のオブジェクトをカレンダーに取り込んで、それを System.currentTimeMillis(); と比較できます。

例えば:

  Calendar start_time = new GregorianCalendar();
  start_time.set(Calendar.HOUR_OF_DAY, sHour);
  start_time.set(Calendar.MINUTE, sMinute);

次に、次のようにシステム時間と比較します

If(start_time.getTimeInMillis() <= System.currentTimeMillis())

また

日時を Millis 形式で格納すると、直接比較できます。

例えば:

if(yourTimes <= System.currentTimeMillis())

それがあなたを助けることを願っています。

于 2012-11-06T11:18:22.230 に答える