Возможный дубликат:
размер растрового изображения в байтах после декодирования? а>
В любом случае, я могу получить размер этого растрового изображения? Я пытался использовать getByteCount(), но не могу его использовать?
Bitmap bitmap = BitmapFactory.decodeByteArray(decryptedData , 0, decryptedData .length); //decoding bytearrayoutputstream to bitmap
Какие-либо предложения?
Ответ 1 · рейтинг 5 · das_weezul
Как видно из API, вы можете использовать
getWidth()
getHeight()
для размера растрового изображения в пикселях.
А если это массив байтов (8 бит = 1 байт), то просто возьмите decryptedData.length - offset и вы знаете, сколько байтов в растровом изображении.
Или я что-то здесь упускаю?
Ответ 2 · рейтинг 4 · Paradius
Если изображение хранится локально, вы можете сделать следующее
public long getImageLength(String absFileName)
{
File file = new File(absFileName);
return file.length();
}
/**
* From "http://stackoverflow.com/questions/2169649/open-an-image-in-androids-built-in-gallery-app-programmatically"
* uri - data stored in an Intent returned from an application such as Gallery or Camera
*/
private String getAbsPath(Uri uri)
{
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(uri, projection, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}