为了账号安全,请及时绑定邮箱和手机立即绑定

如何将图像作为BLOB存储在Sqlitt中&如何检索?

如何将图像作为BLOB存储在Sqlitt中&如何检索?

BIG阳 2019-06-21 15:07:28
如何将图像作为BLOB存储在Sqlitt中&如何检索?我想把一个图片(从url)存储到sqite数据库中。为此,我使用:db = new DataBase(getApplicationContext());URL url = new URL("http://sree.cc/wp-content/uploads/schogini_team.png");URLConnection ucon = url.openConnection();InputStream is = ucon.getInputStream();BufferedInputStream bis = new BufferedInputStream(is,128);ByteArrayBuffer barb= new ByteArrayBuffer(128);int current = 0;while ((current = bis.read()) != -1) {    barb.append((byte) current);}ContentValues filedata= new ContentValues();filedata.put(DataBase.IMG_SRC,barb.toByteArray());db.insert(DataBase.Table_Img, null, filedata);在Insert():public void insert(String tableImg, Object object,        ContentValues dataToInsert) {    // TODO Auto-generated method stub    String sql = "INSERT INTO "+tableImg+" ("+ID+","+IMG_SRC+") " +            "VALUES ('"+1+"','"+dataToInsert+"')";    db.execSQL(sql);}用于检索图像:Cursor cursor = db.selectDataToShow(DataBase.Table_Img, DataBase.IMG_SRC);byte[] imageByteArray=cursor.getBlob(cursor.getColumnIndex(DataBase.IMG_SRC));      cursor.close();ByteArrayInputStream imageStream = new ByteArrayInputStream(imageByteArray);Bitmap theImage = BitmapFactory.decodeStream(imageStream);System.out.println(">>>>>>>>>>>>>>>>>>>>>> "+theImage);所以我找到了null.在我的数据库中,图像的值存储为:Image=[B@43e5ac48]
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 617 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信