Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Как узанать размер каталога?


Автор: Dean 1.10.2009, 09:41
Помогите мне, чайнику, пожалуйста

Нужно вывести размеры файлов и каталогов заданной директории. Пытаюсь так:

Код

String files[] = dir.list();
for (int i = 0; i < files.length; i++) 
{    File f1 = new File(directory +"/" + files[i]);
      String info = files[i];
      info += " " + f1.length() + " bytes ";
      .....
}


Выводится только размер файлов, а вместо размеров каталогов выводит 0.
Как быть?  smile  

Автор: magicfly 1.10.2009, 10:37
Код

public long getFileSize(File folder) { 
        System.out.println("Folder: " + folder.getName());
    long foldersize = 0;

    File[] filelist = folder.listFiles();
    for (int i = 0; i < filelist.length; i++) {
      if (filelist[i].isDirectory()) {
        foldersize += getFileSize(filelist[i]);
      } else {
        foldersize += filelist[i].length();
      }
    }
        return foldersize;
  }


5 минут гугля

Моя ошибка 

Автор: Samotnik 1.10.2009, 10:43
http://www.roseindia.net/java/java-get-example/folder-size.shtml


magicfly, используйте пажалста для вставки программного кода, соответсвующие теги

Автор: LSD 1.10.2009, 11:26
http://commons.apache.org/io/api-release/org/apache/commons/io/FileUtils.html#sizeOfDirectory%28java.io.File%29

Автор: Dean 1.10.2009, 14:03
спасибо, получилось, задача решена  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)