Android 将图像路径名从SD卡保存到Sqlite数据库

Android 将图像路径名从SD卡保存到Sqlite数据库,android,Android,我这里有点小麻烦。我试图通过存储图像路径名来存储和检索sqlitedatabase中的图像。图像存储在SD卡中。我试过这个代码,但不起作用 保存图像路径: String filename = "/sdcard/barn.jpg" ContentValues vals2 = new ContentValues(); //create content values and store it. vals.put(ImageDB.SHOW, filename); imagedb.tagI

我这里有点小麻烦。我试图通过存储图像路径名来存储和检索sqlitedatabase中的图像。图像存储在SD卡中。我试过这个代码,但不起作用

保存图像路径:

 String filename = "/sdcard/barn.jpg"

ContentValues vals2 = new ContentValues(); //create content values and store it.
   vals.put(ImageDB.SHOW, filename);
   imagedb.tagImage(vals2);


public long tagImage(ContentValues val){
        Log.d(TAG,"tagged Images");
        return db.insert(DATABASE_TABLE, null, val);
    }
检索:

Cursor cursor = imagedb.retrieveTag(tag);

    /*method for retrieving*/

    public Cursor retrieveTag(String tag){
    String[] condition = {tag)};
    Cursor cursor = db.query(DATABASE_TABLE, condition, null, null, null, null, null);
        cursor.moveToNext();
        return cursor;
    }
光标没有返回任何内容,我有时会收到一个CursorIndexOutofBoundsException。
这是保存和检索sqlite数据库的正确方法,还是文件名对sqlite数据库造成问题?。。我怎样才能正确地存储它?。。谢谢。

尝试使用Environment获取根目录。getExternalStorageDirectory(),harcoding“/sdcard/”可能无法工作

有没有更好的办法来拯救它?我不想在数据库中保存实际图像。好的..记得这样的事情。谢谢我会试一试的!