我使用以下代码保存相机拍摄的图像
File storageDir= new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),"myphoto.png");// getAlbumName()
FileOutputStream out = new FileOutputStream(storageDir);
ObjectOutputStream oos =new ObjectOutputStream(out);
mImageBitmap.compress(Bitmap.CompressFormat.PNG,100 , oos);
oos.flush();
oos.close();
我在“\ pictures”文件夹中输入“myphoto.png”,但是当尝试打开图像时,我只能看到黑色窗口而不是图像。我错过了什么?感谢
答案 0 :(得分:1)
您不应该压缩到ObjectOutputStream oos
而是压缩到FileOutputStream out
。 ObjectOutputStream
用于Java对象,它会向输出中添加不需要的数据。
File storageDir= new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),"myphoto.png");// getAlbumName()
FileOutputStream out = new FileOutputStream(storageDir);
mImageBitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
out.flush();
out.close();