根据研究,从远程url保存位图图像的典型方法是:
Bitmap bmImage = null;
InputStream in = new java.net.URL(imageUrl).openStream();
bmImage = BitmapFactory.decodeStream(in);
File file = new File(myPath);
FileOutputStream outputStream;
outputStream = new FileOutputStream(file);
bmImage.compress(Bitmap.CompressFormat.PNG, 100, outputStream);
outputStream.close();
我不能保存位图,除非它被压缩(位图总是未压缩)。远程图像大小为32KB,压缩后为110KB。我知道我必须降低压缩参数以获得更小的尺寸,但远程图像是优化的,而且效率更高。
有一种方法,我可以保存远程图像在移动存储不压缩它?
= = = = = 回答我的问题 = = = = =
首先我为误导性的内容道歉;所有我想要的是保存图像,可以是png|jpeg|gif|等。可能我误导了你们,我想保存的图像是BMP格式的,但它不是。
然而,对于那些想保存图像而不压缩的人来说,看看这个答案
按照下面的代码使用AndroidBmpUtil:
new AndroidBmpUtil().save(bmImage, file);