bitmap 上传数据库后 获取下来无法转成bitmap
星期天搞了一天了。。悲催调用相机拍照后
public static Bitmap stringtoBitmap(String string){
//将字符串转换成Bitmap类型
Bitmap bitmap=null;
try {
byte[]bitmapArray;
bitmapArray=Base64.decode(string, Base64.DEFAULT);
bitmap=BitmapFactory.decodeByteArray(bitmapArray, 0, bitmapArray.length);
} catch (Exception e) {
e.printStackTrace();
}
return bitmap;
}
public static String bitmaptoString(Bitmap bitmap){
//将Bitmap转换成字符串
String string=null;
ByteArrayOutputStream bStream=new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG,100,bStream);
byte[]bytes=bStream.toByteArray();
string=Base64.encodeToString(bytes,Base64.DEFAULT);
return string;
}
通过这个将bitmap转换成字符串上传至数据库,数据库里是 text格式。
然后再将获取下来的字符串转换成bitmap 贴在ImageView 显示。
通过webserver 调用json上传的。。
然后发现上传的字符串长度 跟 获取下来的字符串长度不等。。。
测试了下。。上传时 字符串长度有10W。 然后再数据库中的字段中复制出来 一算只有5W多。。。足足少了一半。。。text不该连10w也放不下啊。。不知道是哪边出了问题。。
求各位前辈帮忙啊。。
bitmap json 数据库 上传下载 base64 --------------------编程问答-------------------- 存储格式的问题 --------------------编程问答--------------------
哪个地方的问题啊? 该怎么解决呢。。。。。 --------------------编程问答-------------------- 转成2机制试试~~~ --------------------编程问答-------------------- 二进制试试 --------------------编程问答--------------------
ByteArrayOutputStream bStream=new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG,100,bStream);
byte[]bytes=bStream.toByteArray();
return bytes;
但是 又必须使用json 。。json是文本的啊。 一经过json。。 二进制就被换成了字符串。。 --------------------编程问答-------------------- 你用 Base64 把图像转成文本,然后发进去,
取出来,用 Base64 还原,
补充:移动开发 , Android