Здесь - хороший пример и объяснение , как загружать изображения .Вы можете рассчитать размер удаленных файлов следующим способом.Передайте массив URL-адресов этому методу, и он вернет вам размер в байтах.
public static int getSize(String[] urls){
int sizeInBytes = 0;
for (String string : urls) {
sizeInBytes += ((int) (new File(string)).length());
}
return sizeInBytes;
}
Вы также можете рассчитать размер изображений после их загрузки на SD-карту. Передайте файл каталога (где вы сохранили все изображения) в метод getSize(...)
, и он вернет размер каталога в байтах.
String basePath = Environment.getExternalStorageDirectory().toString();
File file = new File(basePath +"file/myImageDirectory/");
ClassName.getSize(file);
Метод вычисления размера каталога.
public static int getSize(File directory) {
return getSize(directory, 0);
}
private static int getSize(File directory,int sizeInBytes) {
if (directory == null)
return sizeInBytes;
if (!directory.exists())
return sizeInBytes;
if (directory.isDirectory()) {
String[] list = directory.list();
// Some JVMs return null for File.list() when the
// directory is empty.
if (list != null) {
for (int i = 0; i < list.length; i++) {
File entry = new File(directory, list[i]);
if (entry.isDirectory()) {
sizeInBytes = getSize(entry,sizeInBytes);
} else {
sizeInBytes +=entry.length();
}
}
}
}
return sizeInBytes;
}
Один MB=1024*1024
, Вы можете получить SizeInMB
, разделив sizeInBytes
на размер в МБ;sizeInMB=sizeInBytes/MB;