Как отобразить растровое изображение из внутреннего хранилища?

#android #bitmap #loading

#Android #растровое изображение #Загрузка

Вопрос:

Я сохранил свои растровые изображения во внутреннем хранилище, но не могу их повторно отобразить. Я долгое время занимался исследованиями, но пока не нашел.

 public static void saveImages(Activity activity) throws IOException
    {  
        for (int i=0; i<categories.getItems().length; i  ) {        
            OutputStream os2 = activity.openFileOutput(categories.getItems()[i].getName(),
                    Context.MODE_WORLD_READABLE);
            OutputStreamWriter osw2 = new OutputStreamWriter(os2);
            Bitmap bmp = ((BitmapDrawable)categories.getItems()[i].getCategoryImage()).getBitmap(); 
            bmp.compress(Bitmap.CompressFormat.PNG, 90, os2);
            osw2.close();
        }
    }
  

Этот код успешно работает для сохранения изображений. Я буду повторно отображать эти изображения из файлов.
Спасибо

Комментарии:

1. Извините, я не смог отформатировать свой код. Я новичок на этом сайте.

2. Просто выделите весь свой код и нажмите Ctrl Shift K. Это должно сработать. Я не могу отредактировать ваш вопрос, иначе я бы сделал это вместо вас.

3. @sharp higherpass.com/Android/Tutorials/Working-With-Images-In-Android/…

Ответ №1:

Попробуйте этот код: используется openFileInput для извлечения сохраненных вами потоков, а затем их декодирования:

 for (int i=0; i<categories.getItems().length; i  ) {        
InputStream is = activity.openFileInput(categories.getItems()[i].getName());
Bitmap b = BitmapFactory.decodeStream(is);

// do whatever you need with b
}
  

Ответ №2:

Попробуйте это

     File f=new File(yourdir, imagename);
    Bitmap b = BitmapFactory.decodeStream(new FileInputStream(f));
  

Ответ №3:

декодируйте растровое изображение, а затем создайте новое изображение, а затем добавьте растровое изображение в изображение.

Комментарии:

1. Для декодирования мне нужно знать путь к папкам, но я не знаю.

2. Попробуйте Log.d(«», «место хранения» Environment.getExternalStorageDirectory()); и просмотрите свой журнал в DDMS