2011-03-10 62 views
0

我在这里遇到了一些麻烦。我试图通过存储它们的图像路径名来存储和检索来自sqlitedatabase的图像。图像存储在SD卡中。我试过这个代码,但它不工作。保存图像从SD卡到Sqlite数据库的路径名称

保存图像的路径:

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。 这是一个正确的方式来保存和检索从sqlitedatabase或文件名造成sqlite数据库的问题?..我如何正确存储它..谢谢。

+0

有没有更好的方法来保存它?我不想将实际图像保存在数据库中。 – irobotxxx 2011-03-11 00:40:55

回答

2

尝试使用Environment.getExternalStorageDirectory()获取根目录,可能无法对“/ sdcard /”进行编码。

+0

好吧..记得这样的事情。谢谢!会给一个去! – irobotxxx 2011-03-12 01:36:04