PDA

Visualizza la versione completa : [java] oggetto File


maurizio2
28-02-2005, 14:20
...
public static void main(String[] args) {


File myFile = new File("c:/myDirectory");
System.out.println(myFile.listFiles());
}

c:/myDirectory e' una dyrectori esistente.

Perche' non mi da la lista di tutti i files e le dyrectory
contenute in myDirectory??

LeleFT
28-02-2005, 14:47
Perchè il metodo listFiles() ritorna un array di File che è un oggetto. Per stamparne il contenuto, quindi, è necessario stampare il valore di ciascuno degli oggetti contenuti nell'array:


public static void main(String[] args) {
File myFile = new File("c:/myDirectory");
File [] elenco = myFile.listFiles();
for (int i=0; i<elenco.length; i++) System.out.println(elenco[i]);
}

Ciao. :ciauz:

maurizio2
28-02-2005, 14:50
Ciao!!!
Stavo proprio correggendo in questo momento
la discussione avevo gia' trovato la soluzione
quindi list() restituisce un array di oggetti File!!!
Ma ti piace il java??

LeleFT
28-02-2005, 14:53
Il metodo list() restituisce un array di String, che rappresentano i path di tutti i file e le cartelle contenuti, listFiles(), invece, restituisce un array di oggetti File.

Certo che mi piace il linguaggio Java, perchè? :)


Ciao. :ciauz:

maurizio2
28-02-2005, 15:05
pero l'array restituito sia da listFiles() che da list()
sono comunque vusualizzati da System.out.println()
allo stesso modo perche??

Ti ho chiesto ce ti piace cosi mi faccio aiutare :yuppi:

LeleFT
28-02-2005, 15:13
Perchè, essendo degli oggetti, ciò che vedi è il valore con cui Java tiene traccia di essi (un po' come il riferimento in memoria).
Inoltre, essendo entrambi degli array, noterai che ciò che viene visualizzato è qualcosa del tipo


[Ljava.lang.String;@108786b

La quadra sta ad indicaer che si tratta di un Array (o, almeno, nella maggior parte dei casi si tratta di questo).
java.lang.String indica che si tratta di un array di String.
La parte rimanente è il riferimento di memoria di Java.

Per gli aiuti non ti preoccupare. Il forum risponde (quasi) sempre. :)


Ciao. :ciauz:

Loading