#android #fileoutputstream #internal-storage
#Android #fileoutputstream #внутренняя память
Вопрос:
try {
FileOutputStream fileOutputStream = new FileOutputStream(path);
bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fileOutputStream);
fileOutputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
Я пишу этот код для сохранения растрового изображения, и он работает нормально, пожалуйста, скажите мне, если во внутреннем хранилище не будет свободного места, что произойдет: остановить приложение? или просто игнорировал бы сохранение без каких-либо остановок и исключений? или просто сказал бы, что нет свободного места? или что-то еще?
Заранее благодарю вас.
Ответ №1:
Он выдает исключение, подобное этому: java.io.IOException: write failed: ENOSPC (No space left on device)
Комментарии:
1. спасибо, в этом случае приложение перестанет работать или только сообщит (на устройстве не осталось места)?
2. Вам нужно перехватить
IOException
и обработать его должным образом, например, сообщив пользователю, что произошла ошибка, или удалив другие файлы, созданные вашим приложением, и им больше не нужно освобождать место, и повторите попытку.