Сохранить файл:
FileOutputStream fo = null;
try {
fo = this.openFileOutput("test.png", Context.MODE_WORLD_READABLE);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
bitmap.compress(CompressFormat.PNG, 100, fo)
Загрузка файла:
String fname = this.getFilesDir().getAbsolutePath()+"/test.png";
Bitmap bMap = BitmapFactory.decodeFile(fname);
i.setImageBitmap(bMap);
Последняя строка дает исключение нулевого указателя, почему BitmapFactory.decodeFile возвращает пустой указатель? Я могу проверить, что файл становится сохраненным правильно, поскольку я могу вытянуть его с помощью adb и видеть, что png отображается правильно.
Если NullPointerException
находится непосредственно в этой строке:
i.setImageBitmap (bMap);
Тогда ваша проблема в том, что i
равно нулю
. Учитывая, что вы вызываете setImageBitmap (), я предполагаю, что i
является ImageView
- убедитесь, что ваш вызов findViewById ()
работает.
Кроме того, вы должны использовать следующее, чтобы получить fname
:
String fname = new File (getFilesDir (), "test.png"). GetAbsolutePath ();