从android中的sqlite数据库中获取字符串,日期,时间和int

前端之家收集整理的这篇文章主要介绍了从android中的sqlite数据库中获取字符串,日期,时间和int前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我使用此代码将字符串,日期,时间和int值插入sqlite数据库

void addRemAction(RemActions remaction) {
    sqliteDatabase db = this.getWritableDatabase();
    ContentValues values = new ContentValues();
    values.put(KEY_ACTOINS_TITLE,remaction.getTitle()); // Action title
    values.put(KEY_ACTIONS_MSG,remaction.getMsg()); // action msg



    values.put(KEY_ACTIONS_DATE,dateFormat.format(new Date()));  // action date
    values.put(KEY_ACTIONS_TIME,remaction.getTime()); // action time
    values.put(KEY_ACTIONS_PLACE_LONG,remaction.getPlong()); // action place long
    values.put(KEY_ACTIONS_PLACE_LAT,remaction.getPlat());  // action place lat

    // Inserting Row
    db.insert(TABLE_ACTIONS,null,values);
    db.close(); // Closing database connection

这是我的代码来检索它

RemActions getRemAction(int id) {
    sqliteDatabase db = this.getReadableDatabase();

    Cursor cursor = db.query(TABLE_ACTIONS,new String[] {KEY_ACTOINS_TITLE,KEY_ACTIONS_MSG,KEY_PLACES_NAME,KEY_ACTIONS_DATE,KEY_ACTIONS_TIME},KEY_ACTIONS_ID + "=?",new String[] { String.valueOf(id) },null);
    if (cursor != null)
        cursor.moveToFirst();

    RemActions remActions = new RemActions(cursor.getString(0),cursor.getString(1),cursor.getString(2),cursor.getString(3),cursor.getInt(4));
    // return remActions
    return remActions;

现在我的ide给了我错误,因为我的RemAction类的构造函数中的第4个参数是java.util.date类中的Date类型.

我的问题是“我如何设置光标以日期格式获取它?”

生病了很高兴根据要求提供额外的代码

最佳答案
由于您无法在sqlite中保存日期/时间值,因此应首先将它们转换为毫秒并将其存储为.

Date c = new Date(System.currentTimeMillis());
long milliseconds = c.getTime();
//To get current time

如果您需要将毫秒更改回日期格式:

Date c = new Date(cursor.getLong(4));

然后,您可以使用SimpleDateFormat格式化日期.

原文链接:https://www.f2er.com/android/431146.html

猜你在找的Android相关文章