我使用okhttp
下载png图片,然后直接将其写入名为****。png的文件中,而没有首先将其解码为位图。但是我无法打开该文件,所以我可以不会显示我保存的图片。
那么,这是怎么回事?响应主体中还有其他内容吗?
response=client.newCall(request).execute();
in=response.body().byteStream();
out=new FileOutputStream(file);
byte[] bytes=new byte[1024];
while (in.read(bytes)!=-1){
out.write(bytes);
}
错误信息:png错误,自适应滤波器值错误
但是,如果我将其解码为位图,然后将其压缩为文件,则可以正常工作。图片可以打开。
response=client.newCall(request).execute();
out=new FileOutputStream(file);
Bitmap bitmap=BitmapFactory.decodeStream(response.body().byteStream());
bitmap.compress(Bitmap.CompressFormat.PNG,100,out);