String 怎么转换为bitmap呢? 安卓 and java
ByteArrayOutputStreamstream=newByteArrayOutputStream();photo.compress(Bitmap.Compress...
ByteArrayOutputStream stream = new ByteArrayOutputStream();
photo.compress(Bitmap.CompressFormat.JPEG, 60, stream);//压缩图片
byte[] b = stream.toByteArray();
// 将图片流以字符串形式存储下来
String tp = new String(Base64Coder.encodeLines(b));
我想把这个过程逆向为String 转换成bitmap,该怎么写呢? 展开
photo.compress(Bitmap.CompressFormat.JPEG, 60, stream);//压缩图片
byte[] b = stream.toByteArray();
// 将图片流以字符串形式存储下来
String tp = new String(Base64Coder.encodeLines(b));
我想把这个过程逆向为String 转换成bitmap,该怎么写呢? 展开
推荐于2016-08-07
展开全部
public 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 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;
}
追问
我试过。。不行-=-
追答
/**
* string转成bitmap
*
* @param st
*/
public static Bitmap convertStringToIcon(String st)
{
// OutputStream out;
Bitmap bitmap = null;
try
{
// out = new FileOutputStream("/sdcard/aa.jpg");
byte[] bitmapArray;
bitmapArray = Base64.decode(st, Base64.DEFAULT);
bitmap =
BitmapFactory.decodeByteArray(bitmapArray, 0,
bitmapArray.length);
// bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
return bitmap;
}
catch (Exception e)
{
return null;
}
}
展开全部
FileOutputStream fos = null;
bitNameStr = "a.png";
String result = "操作失败";
//保存图片到本地
String toDir = "F:\\WebService\\upload"; // 存储路径
byte[] buffer = new BASE64Decoder().decodeBuffer(bitStr); // 对android传过来的图片字符串bitStr进行解码
File destDir = new File(toDir);
if( !destDir.exists() )
destDir.mkdir();
fos = new FileOutputStream(new File(destDir, bitNameStr)); // 保存图片
fos.write(buffer);
fos.flush();
fos.close();
转换Bitmap的话因为上面已经得到了byte[],所以就可以这样
BitmapFactory.decodeByteArray(data, 0, data.length);
这句会返回一个位图对象
bitNameStr = "a.png";
String result = "操作失败";
//保存图片到本地
String toDir = "F:\\WebService\\upload"; // 存储路径
byte[] buffer = new BASE64Decoder().decodeBuffer(bitStr); // 对android传过来的图片字符串bitStr进行解码
File destDir = new File(toDir);
if( !destDir.exists() )
destDir.mkdir();
fos = new FileOutputStream(new File(destDir, bitNameStr)); // 保存图片
fos.write(buffer);
fos.flush();
fos.close();
转换Bitmap的话因为上面已经得到了byte[],所以就可以这样
BitmapFactory.decodeByteArray(data, 0, data.length);
这句会返回一个位图对象
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询