- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试下载图像并将其保存到数据库我下载它并将我保存到 BLOB 字段当我想检索它时它得到空值。我搜索了很多并检查了很多东西但我不知道在哪里问题:(。
保存图片部分:
MyDataBase = new MyDatabase(this);
mydb = MyDataBase.getWritableDatabase();
byte[] tempval;
for (int j = 0; j < myarray.arrtitle.length; j++)
{
tempval = saveimage(myarray.arrpic.get(j),myarray.arrpath[j]);
mydb.execSQL("INSERT INTO news (title,content,image) VALUES (\"" + myarray.arrtitle[j] +
"\",\"" + myarray.arrcontent[j] + "\",\"" + tempval + "\")");
}
mydb.close()
保存图像()函数:
try {
////////////////get bitmap to byte
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, bos);
byte[] image = bos.toByteArray();
return image;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
从数据库读取:
try
{
String temp = null;
Bitmap tempbit = null;
ArrayList<Bitmap> tempbit2 = new ArrayList<Bitmap>();
ArrayList<String> tempstring = new ArrayList<String>();
MyDataBase = new MyDatabase(this);
mydb = MyDataBase.getReadableDatabase();
Cursor cu = mydb.rawQuery("SELECT * FROM news",null);
cu.moveToFirst();
for (int i = 0;i<cu.getCount();i++)
{
temp = cu.getString(cu.getColumnIndex("title"));
byte[] imag = cu.getBlob(cu.getColumnIndex("image"));
tempbit = BitmapFactory.decodeByteArray(imag, 0, imag.length); // i get null here
tempbit2.add(tempbit);
tempstring.add(temp);
cu.moveToNext();
Toast.makeText(getApplicationContext(), "" + tempbit + i, Toast.LENGTH_LONG).show();
}
////////////////////////////show in list view
ListViewAdapte adapter = new ListViewAdapte(Description.this, R.layout.listview, tempstring , tempbit2);
MyList.setAdapter(adapter);
MyList.setOnItemClickListener(this);
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(getApplicationContext(), "error on load from db", Toast.LENGTH_LONG).show();
}
当我 Toast tempbit 时它让我为空
最佳答案
我应该将图片保存为contentview
ContentValues tempval = new ContentValues();
for (int j = 0; j < myarray.arrtitle.length; j++)
{
mydb.execSQL("INSERT INTO news (title,content) VALUES (\"" + myarray.arrtitle[j] +
"\",\"" + myarray.arrcontent[j] + "\"" + ")");
}
for (int j = 0; j < myarray.arrpic.size(); j++)
{
tempval = saveimage(myarray.arrpic.get(j),myarray.arrpath[j]);
update ="title ='" + myarray.arrtitle[j] + "'" ;
mydb.update("news", tempval,update, null);
}
使用 contentview 可以保存图片 :)
关于android - 将图像保存在数据库中 erro & decodeByteArray give null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32372982/
我正在尝试从Camera.PictureCallback onPictureTaken获取Jpeg,但是当我这样做时 bitmapImage = BitmapFactory.decodeByteArr
这段代码给出了运行时异常,我无法捕获它。 BitmapFactory.decodeByteArray 不会返回 null 或类似的内容。 Bitmap bitmap = BitmapFactory.d
是否记录(或合理假设)BitmapFactory.decodeByteArray(...)可以预期识别列出的任何图像格式 here ? 最佳答案 是的,假设是合理的(如果你看一下 AOSP 的源代码,
我正在开发一个 Android 应用程序,它可以显示从 Flickr 下载的照片。我从一个字节数组中获取一个位图对象,该数组又从相关的 Flickr URL 中读取,如下所示: BitmapFacto
这是我的用例: ByteArray ba; // Some value is assigned here Bitmap bitmap = BitmapFactory.decodeByteArray(b
我有一个包含 0 和 -1 (255) 系列的 byte 数组。这是使用 Otsu 算法进行二值化的结果。我用过: BitmapFactory.Options opt = new BitmapFact
我想播放逐帧动画。我有一个 ArrayList byeArr,其中包含 jpeg 图片并将它们一一解码以显示在表面 View 上。 tim = new CountDownTimer(1,1) { in
我正在尝试使用套接字连接将图像从 pc 传输到 android。我能够从电脑接收数据到手机,但是当我将 byte[] 传递给 BitmapFactory 时,它返回 null。有时它会返回图像,但并非
我已经搜索了一段时间,但找不到 android 的 BitmapFactory.decodeByteArray() 的示例实现 我希望了解函数的工作原理,因为我计划将它用于我正在从事的项目,但我无法获
这是 mp3 文件标签中的图像 http://i.stack.imgur.com/HtXqA.jpg 我使用 Android 的 MediaMetaDataRetreiver 从 mp3 文件中获取此
我已经阅读了 100 多篇关于 OOM 问题的文章。大多数是关于大位图的。我正在做一个 map 应用程序,我们在其中下载 256x256 天气叠加图 block 。大多数是完全透明的并且非常小。我刚刚
我正在创建音频播放器,我想向播放器显示歌曲封面,它使用小图像工作,但如果 mp3 文件有大图像,则它会退出布局 View 。我正在使用以下代码将图像大小调整为 300x300: BitmapFacto
编辑:当我将这些字节保存在 txt 文件中以及将其另存为 png 文件时,它会显示图像,但它在这里不起作用,为什么...? 我正在使用这段代码从字节数组创建图像在 doInBackground() 上
我使用 BitmapFactory.decodeByteArray 从 PNG 图像生成位图。然后我使用 Bitmap.getPixels 来检索所有像素数据。问题是当一个像素被设置为完全透明时,所有
我正在使用相机的 previewCallback 来尝试抓取图像。这是我正在使用的代码 private Camera.PreviewCallback mPrevCallback = new Camer
我现在正在开发一个小型服务器-客户端应用程序,服务器位于计算机上,客户端位于 Android 设备上。在某些时候,我希望设备检查它所拥有的图像是否是最新的,并使用尽可能少的数据,因此我编写了一些代码来
我正在尝试将以 Base64 格式存储在数据库中的图像转换为要在 Imageview 中使用的位图。 因此,我以这种方式将其存储在 SQLite 中: Bitmap imageBitmap = (Bi
我正在尝试下载图像并将其保存到数据库我下载它并将我保存到 BLOB 字段当我想检索它时它得到空值。我搜索了很多并检查了很多东西但我不知道在哪里问题:(。 保存图片部分: MyDataBase = ne
所以我正在尝试从一位通过蓝牙串行端口获取图像数据的同事那里移植一些 C++ 代码(我使用的是 Android 手机)。我需要根据数据生成位图。 在测试移植的代码之前,我编写了这个快速函数以假设生成一个
我有一个图像以这种形式存储在数据库中 "/9j/4AAQSkZJRgABAQAAAQABAAD/2w igD//2Q==" 所以绝对是base64编码的。 我通过 php 函数获取它: ... $q
我是一名优秀的程序员,十分优秀!