salve ragazzi,
lavoro con java da poco...molto poco e mi si è presentato il problema di calcolare il peso di una carella.
Sapreste indicarmi come muovermi o magari farmi vedere il codice cosi da potermelo studiare ?
salve ragazzi,
lavoro con java da poco...molto poco e mi si è presentato il problema di calcolare il peso di una carella.
Sapreste indicarmi come muovermi o magari farmi vedere il codice cosi da potermelo studiare ?
Ciao
ROB
Calcolare il "peso" di una cartella equivale a sommare tutti i "pesi" dei file in essa contenuti e di quelli nelle sue sottodirectory.
Quindi, devi ottenere l'elenco dei file della directory (metodo listFiles() della classe File), scorrerlo e, se l'i-esimo elemento rappresenta un file (metodo isFile()) sommi la sua dimensione ad un contatore di dimensione (metodo length()). Se è una directory (metodo isDirectory()), devi ripetere ricorsivamente questa cosa.
Ciao.![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza
Grazie mille Lele.
In mancanza di codice da studiare provero' a creare ahahahahh
Ciao
ROB
Il minimo (ma proprio il minimo) per elencare tutti i file in una directory e sue sotto directory è in questo esempio:
codice:import java.io.*; public class ElencaFile { public static void main(String[] args) { File dir = new File("C:\\"); // directory di base elencaFile(dir); } private static void elencaFile(File dir) { File[] files = dir.listFiles(); for (int i = 0; i < files.length; i++) { File f = files[i]; if (f.isDirectory()) { elencaFile(f); // ricorsivo!!! } else { System.out.println(f); } } } }
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Questo è perfetto !!!
Ora grazie ai consigli di lele devo riuscire a utilizzare alcuni metodi !
GRAZZZZZZZIE
Ciao
ROB
Scusa Andbin ma è possibile inserire il metodo isfile nel codice cosi da riuscire a sommare il peso di tutti i files ?
Se si il tutto deve essere inserito dentro elencaFile nel ciclo for ???
Ciao
ROB
Se vuoi avere la somma delle dimensioni di tutti i file, innanzitutto dovresti fare in modo che il metodo restituisca un long. Nel ciclo for sommi tutte le dimensioni dei file più le dimensioni ottenute invocando ricorsivamente il metodo! E restituisci il valore.Originariamente inviato da RobJJ
Scusa Andbin ma è possibile inserire il metodo isfile nel codice cosi da riuscire a sommare il peso di tutti i files ?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
per ora ho un po' di difficoltà...
ho ripreso java da pochissimo e sto' cercando di capire come muovermi al meglio.
Ti ringrazio per l'aiuto,adesso devo riuscire a mettere insieme 2 righe di codice con quello che gia' mi hai fornito.
Speriamo bene !!!!!!
Ciao
ROB
Non è difficile!Originariamente inviato da RobJJ
per ora ho un po' di difficoltà...
a) Dichiari che il metodo ritorna un long
b) Metti una variabile locale di tipo long inizialmente a 0.
c) Nel for sommi a questa variabile la dimensione di ogni file (vedi javadoc di File) più la dimensione ottenuta ricorsivamente
d) Alla fine fai il return del valore.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
non finiro' di ringraziarti !!!!
Ciao
ROB