Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Dimensioni di una directory

    Salve.
    Esiste un metodo per conoscere la dimensione di una directory?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    35
    File file = new File("infilename");

    // Restituisce la dimensione in bytes
    long length = file.length();

    D

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    72
    Purtroppo il metodo length() su File restituisce 0 se si tratta di una directory per cui bisogna fare un piccolo sforzo in più e andare a stanare tutti i file al suo interno, io l'ho risolto con una piccola ricorsioncina:

    codice:
    import java.io.*;
    import java.util.*;
    
    public class TestFileSystem {
    	
    	public static void main(String[] args) {
    		Vector dir=new Vector();
    		getFileSystem(dir,new File("c:/miaDirectory"));
    		System.out.println("Numero File:"+dir.size());
    		System.out.println("Totale:"+length(dir) +" bytes");
    	}
    	
    	public static long length(Vector files){
    		long length=0;
    		for(int t=0;t<files.size();t++){
    			File file=(File)files.get(t);
    			length+=file.length();
    		}
    		return length;
    	}
    	
    	public static Vector getFileSystem(Vector lista,File file){
    		if(file.exists()){ 
    			if(lista!=null){
    				if(file.isDirectory()){
    					File[] files=file.listFiles();
    					for(int t=0;t<files.length;t++)
    						lista=getFileSystem(lista, files[t]); 
    				}else{
    					lista.add(file); 
    				}
    			}
    			return lista; 
    		}
    		return null;
    	}
    }
    Dovrebbe andare bene , ciao.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.