PDA

Visualizza la versione completa : Come recuperare il percorso di un file e passarlo al metodo parse()


 
mery messina
24-06-2009, 12:05
Salve,devo passare il percorso di un file al metodo parser per effettuare il parsing di un file.xml,qualcuno sa dirmi come recuperare il percorso del file,partendo dall' inserimento del semplice nome del file all' interno di un campo Text di un' interfaccia grafica,che poi deve essere passato al metodo parser.
Grazie

andbin
24-06-2009, 12:18
Originariamente inviato da mery messina
partendo dall' inserimento del semplice nome del file all' interno di un campo Text di un' interfaccia graficaMa dipende cosa ci scrivi ... o comunque vuoi che l'utente ci scriva!!! E tra l'altro forse fai prima ad usare JFileChooser, così l'utente "sfoglia" il file-system comodamente e alla fin fine hai un oggetto java.io.File che passi direttamente al parse().

mery messina
24-06-2009, 12:27
no è l' utente che da tastiera scrive il nome del file nel Text dell' interfaccia!!!!!

LeleFT
24-06-2009, 12:31
Ok, ora resta da capire che tipo di parametro vuole il metodo parse().
Se accetta una stringa che rappresenta il nome del file (con, eventualmente, il percorso)



String nomeFile = tuoText.getText();
tuoParser.parse( nomeFile );


Se, al contrario, vuole un oggetto di tipo File:



File tuoFile = new File( tuoText.getText() );
tuoParser.parse( tuoFile );


Se, invece, vuole una URL:



URL tuaURL = (new File(tuoText.getText()) ).toURL();
tuoParser.parse( tuaURL );



Ciao. :ciauz:

mery messina
24-06-2009, 12:35
il metodo parse vuole il percorso dove si trova il file,ma il problema è che nell' interfaccia grafica cioe' nel Text io inserisco il nome del file non il percorso,quindi vorrei capire come dall' inserimento del nome in Text posso recuperare il percorso ad esso relativo per poi poterlo passare al metodo parse()!!!

andbin
24-06-2009, 12:42
Originariamente inviato da mery messina
ma il problema è che nell' interfaccia grafica cioe' nel Text io inserisco il nome del fileMale ... o perlomeno a questo punto bisogna "presupporre" qualcos'altro.

In generale le possibilità potrebbero essere:

a) L'utente deve scrivere un path assoluto es. C:\blabla

b) L'utente può scrivere un semplice nome di file senza alcun path. In tal caso il path deve essere dedotto/determinato in qualche modo e ci sono almeno 2 modi (che mi vengono in mente):
1) L'utente presuppone che il file sia nella "directory corrente", che dipende da come è stata avviata la applicazione .... ma questo lo "sa" l'utente ... all'applicazione potrebbe non importare.
2) Si presuppone che il file sia in una directory "nota" alla applicazione (che potrebbe anche non essere quella "corrente").

mery messina
24-06-2009, 12:44
non ho capito niente....come posso recuperare il percorso di un file fornendo in ingresso il nome del file???

LeleFT
24-06-2009, 12:50
Originariamente inviato da mery messina
non ho capito niente....come posso recuperare il percorso di un file fornendo in ingresso il nome del file???
E' una domanda senza senso: all'interno di un disco ci possono essere milioni di file con lo stesso nome, tutti, ovviamente, in posti diversi. Quale prendiamo? Come lo prendiamo?

E' chiaro che l'implementazione è sbagliata. Come ha detto andbin, l'utente dovrebbe immettere il percorso completo di un file, oppure usare un JFileChooser per sceglierselo. Il solo nome di un file, senza un percorso che ne indica la posizione, non ha alcun significato, per nessuna libreria.


Ciao. :ciauz:

andbin
24-06-2009, 12:50
Originariamente inviato da mery messina
non ho capito niente....come posso recuperare il percorso di un file fornendo in ingresso il nome del file??? Senti ... non esiste un metodo "magico" che dato un semplice nome "pippo.xml" ti dà il path!!! Semmai può entrare in gioco la questione della "directory corrente".

Io sono in C:\Pippo e lancio la applicazione, comando completo:

C:\Pippo>java blabla....

Se l'utente deve poter scrivere solo un semplice nome, un approccio banale potrebbe essere: il file indicato è nella directory "corrente".
Non ti va bene???

mery messina
24-06-2009, 12:51
quello che mi chiedo esiste un metodo contenuto in una libreria di java che se scrivo nomefile.metodo() mi ritorna il percorso di tale file...
Non so esiste un metodo getPath()?se si in quale libreri ae' contenuto?

Loading