如何在不压缩的情况下在Android中保存图像?

时间:2016-09-11 18:47:58

标签: java android

我制作的Android应用程序可以捕获图像并将其存储在内部存储器中,但保存图像会被压缩,我希望以原始大小保存而不进行任何压缩。

这是我用来存储图像的代码,因为我不这样做压缩??

ContextWrapper cw = new ContextWrapper(context);

File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);

File mypath = new File(directory, "TheChat" + (System.currentTimeMillis()/1000) + "Avatar.jpg");

FileOutputStream fileOutputStream = null;
try {
    fileOutputStream = new FileOutputStream(mypath);
    bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fileOutputStream);
}
catch (Exception e) {
    e.printStackTrace();
}
finally {
    try {
        if (fileOutputStream != null) {
            fileOutputStream.flush();
            fileOutputStream.close();
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
}

1 个答案:

答案 0 :(得分:2)

将其保存为BLOB(bytearray),然后在加载时将其重新转换为位图。如果它只供内部使用,它应该可以正常工作。如果你根本不压缩它,你也可以直接格式保存它。