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 查询从数据库中获取日期和时间:

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 回答