|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
|
[Java] JFileChooser - caricare directory
Ciao,
ho usato JFileChooser per poter selezionare file, me li apre e il programma ora funziona. Volevo modificarlo in modo che JFileChooser mi dia la possibilità di selezionare una cartella e quando clicco OK mi crei un array con tutti i file contenuti in quella cartella. Come faccio? Ho già usato DIRECTORIES_ONLY per dirgli di mostrarmi solo le directory, ma non trovo un metodo per dirgli di guardare dentro la cartella. Qualche dritta?
__________________
Vendo...nulla. Cerco...la felicità. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
A quel punto hai in mano un java.io.File che rappresenta la directory sleezionata dall'utente: chiama uno dei suoi metodi list per ottenere i figli contenuti come un array di java.io.File.
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
|
In effetti io avevo già usato getSelectedFiles così:
Codice:
File[] list = c.getSelectedFiles(); EDIT se uso setMultiSelectionEnabled(true) posso selezionare più file e come dicevi anche tu, mi crea un array di FILE. Ma la mia domanda era selezionando una cartella e prendere TUTTI i file in automatico.
__________________
Vendo...nulla. Cerco...la felicità. Ultima modifica di Emaborsa : 09-04-2010 alle 20:46. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
A quale scopo mostri il file chooser all'utente?
Deve selezionare una sola cartella della quale "prendere" tutti i file in essa contenuti? In tal caso la modalità di selezione ovviamente sarà a singolo elemento, e sarà possibile selezionare solo le directory. L'utente può chiudere il file chooser in due modi: o approvando una selezione, oppure cancellando l'azione. Dopo aver verificato di essere nel primo caso [if(JFileChooser.APPROVE_OPTION==filechooser.showXXXDialog())], si chiede al file chooser di restituirci il selected file [File slectedFile=filechooser.getSelectedFile()], che ovviamente sarà una directory. Da questa ci facciamo restituire tutti gli elementi-figli che essa contiene, e che sono "file" (le directory non ci interessano, presumo. Oppure sì e in tal caso bisogna visitarle ricorsivamente) [File[] files=selectedFile.list(new java.io.FileFilter(){public boolean accept(File candidate){return candidate.isFile();}})]. Ora nell'array 'files' hai tutti gli oggetti java.io.File di tipo "file" contenuti nella directory scelta dall'utente.
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
|
Quote:
Intanto grazie.
__________________
Vendo...nulla. Cerco...la felicità. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:11.




















