0

大家好,我有这个 android sqlite 代码来读取表中的所有标题,这个代码在 DBHelper.java 中

//---retrieves all the titles---
    public Cursor getAllTitles() 
    {
        return db.query(DATABASE_TABLE, new String[] {
                KEY_ROWID, 
                KEY_BOOK,
                KEY_AUTHOR,
                KEY_EDITION,    
                KEY_YEAR,
                 KEY_RETURNDATE}, 
                null, 
                null, 
                null, 
                null, 
                null);

这是我的主应用程序中的代码.....

//---get all titles---
        db.open();
        Cursor c = db.getAllTitles();
        if (c.moveToFirst())
        {
            do {          
                DisplayTitle(c);
            } while (c.moveToNext());
        }

我的问题是我想获得例如退还日期,以便我可以将其与当前时间进行比较,并基于此我将采取行动

所以我可以阅读它....buffer [5]并比较它....???

4

3 回答 3

1

假设您的返回日期是一个字符串,您可以在 DisplayTitle(cursor c) 中使用以下内容:

String returnDate = c.getString(c.getColumnIndex(KEY_RETURNDATE));
于 2011-03-25T05:52:44.657 回答
0
public void doWork()
    {
        db.open();
        Cursor c = db.getAllTitles();
        if(c==null)
            return;


        for(c.moveToFirst();!c.isAfterLast();c.moveToNext())
        {

          String key= c.getString(c.getColumnIndex(c.getColumnName(5)));
          //and now you can put the condition to compare current time with key

        }

    }
于 2015-05-02T07:30:32.920 回答
0

像 rajath 所说的那样使用c.getString(c.getColumnIndex(KEY_RETURNDATE));,如果你不再需要它,不要忘记在循环之后关闭你的光标:c.close();否则你会有内存泄漏。

于 2015-05-02T07:44:08.860 回答