2017-01-30 8 views
0

Как загрузить изображение «.jpg например» в виде файла?Загрузить изображение в виде файла

Чтобы быть точным, этот файл был сохранен с помощью:

public static void saveFile(Context context, Bitmap bitmap, String picName) { 
    FileOutputStream fileOutputStream; 
    try { 
     fileOutputStream = context.openFileOutput(picName, Context.MODE_PRIVATE); 
     bitmap.compress(Bitmap.CompressFormat.JPEG, 30, fileOutputStream); 
     fileOutputStream.close(); 
    } catch (FileNotFoundException e) { 
     Log.d(TAG, "file not found"); 
     e.printStackTrace(); 
    } catch (IOException e) { 
     Log.d(TAG, "io exception"); 
     e.printStackTrace(); 
    } 

} 

Так что у меня только имя в качестве ссылки

Я пытался что:

public static Bitmap loadBitmap(Context context, String picName) { 

    Bitmap bitmap = null; 
    FileInputStream fileInputStream; 
    try { 
     fileInputStream = context.openFileInput(picName); 
     bitmap = BitmapFactory.decodeStream(fileInputStream); 
     fileInputStream.close(); 

    } catch (FileNotFoundException e) { 
     Log.d(TAG, "file not found"); 
     e.printStackTrace(); 
    } catch (IOException e) { 
     Log.d(TAG, "io exception"); 
     e.printStackTrace(); 
    } 
    return bitmap; 
} 

Это работает, но мне нужно его будь то файл

ответ

1

Если вы хотите работать с объектами File, я рекомендую вам лет u делайте это последовательно. Используйте getFilesDir() или getCacheDir() как основание для построения файла File, где вы хотите, чтобы файл был отправлен (например, new File(getCacheDir(), picName)). Затем используйте FileOutputStream и FileInputStream для ввода/вывода, заменяя openFileOutput() и openFileInput().

+0

Этот файл представляет собой изображение с намерением камеры. Мне нужно отобразить его в ImageView/уменьшить его размер. Мне нужно только это как файл, чтобы отправить его через запрос POST. Не было бы более эффективным получить растровое изображение и преобразовать его в это время? –

+0

@ Ан-дроид: «Не было бы более эффективным получить растровое изображение и преобразовать его в это время?» - Извините, но я не понимаю, что вы подразумеваете под этим. – CommonsWare

+0

Я имею в виду, не было бы более эффективным работать с растровым изображением для целей показа и преобразовывать его в файл, когда мне нужно отправить его в почтовый запрос? –

Смежные вопросы