sto realizzando una sorta di piccolo file manager vorrei riuscire ad aprire il file selezionato...come potrei fare?
sto realizzando una sorta di piccolo file manager vorrei riuscire ad aprire il file selezionato...come potrei fare?
Dipende da cosa devi farci ... sono file binari? sono file di testo? Se di testo, devi leggere "a righe"? Insomma ... aprire il file per fare ... cosa?Originariamente inviato da Metflar
sto realizzando una sorta di piccolo file manager vorrei riuscire ad aprire il file selezionato...come potrei fare?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
è questo il problema può essere unb qualsiasi tipo di file[credevo che si capiva visto che ho scritto file manager...] :master:Originariamente inviato da andbin
Dipende da cosa devi farci ... sono file binari? sono file di testo? Se di testo, devi leggere "a righe"? Insomma ... aprire il file per fare ... cosa?
Beh, file manager vuol solo dire, in generale, "gestore dei file", non è che dica chissà che cosa ....Originariamente inviato da Metflar
è questo il problema può essere unb qualsiasi tipo di file[credevo che si capiva visto che ho scritto file manager...] :master:
Comunque, vuoi forse aprire il file tramite l'applicazione "registrata" per quella determinata estensione del file?
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
si vorrei fare così ma nn mi viene niente in menteOriginariamente inviato da andbin
Beh, file manager vuol solo dire, in generale, "gestore dei file", non è che dica chissà che cosa ....
Comunque, vuoi forse aprire il file tramite l'applicazione "registrata" per quella determinata estensione del file?![]()
Metodo open() di java.awt.Desktop, solo da Java 6.Originariamente inviato da Metflar
si vorrei fare così ma nn mi viene niente in mente![]()
Per versioni precedenti o usi JDIC o lanci con Runtime.exec() un apposito comando dipendente dal sistema.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
funzionaOriginariamente inviato da andbin
Metodo open() di java.awt.Desktop, solo da Java 6.
Per versioni precedenti o usi JDIC o lanci con Runtime.exec() un apposito comando dipendente dal sistema....sarebbe troppo complicato implementare apri con...?
e un'altra cosa io uso un JFileChooser per esplorare le cartelle e una JTable per avere la descrizione dei file[nome,dimensione,tipo,permessi,data di ultima modifica,e path] vorrei riuscire a mettere che se clicco su un file mi da la desrizione sulla jtable e se c clicco due volte lo apre[per ora aprire e cancellare lo faccio dalla jtable e il clic lo devo fare sul filechooser invece che sul file selezionato]
Si può fare per Windows e non è difficile:Originariamente inviato da Metflar
sarebbe troppo complicato implementare apri con...?
Ma ovviamente è molto system-dependent!codice:Runtime runtime = Runtime.getRuntime (); runtime.exec (new String[] { "rundll32", "shell32,OpenAs_RunDLL", "C:\\path_ad_un_file"});
Se vuoi "ascoltare" l'evento di selezione di un file sul JFileChooser, devi aggiungergli un PropertyChangeListener.Originariamente inviato da Metflar
e un'altra cosa io uso un JFileChooser per esplorare le cartelle e una JTable per avere la descrizione dei file[nome,dimensione,tipo,permessi,data di ultima modifica,e path] vorrei riuscire a mettere che se clicco su un file mi da la desrizione sulla jtable e se c clicco due volte lo apre[per ora aprire e cancellare lo faccio dalla jtable e il clic lo devo fare sul filechooser invece che sul file selezionato]
Ogni "property" ha un nome (String). JFileChooser ne ha molte di property e c'è la property JFileChooser.SELECTED_FILE_CHANGED_PROPERTY. Nel metodo propertyChange() che dovrai implementare, devi solo prendere il nome della property con getPropertyName() invocato sul PropertyChangeEvent fornito al metodo e verificare se è quello detto sopra.
È più facile a farlo che a dirlo.![]()
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
fino qui c sn riuscito ma devo riuscire a dirgli che deve farlo solo quando è selezionato un file nn una directoryOriginariamente inviato da andbin
Si può fare per Windows e non è difficile:
Ma ovviamente è molto system-dependent!codice:Runtime runtime = Runtime.getRuntime (); runtime.exec (new String[] { "rundll32", "shell32,OpenAs_RunDLL", "C:\\path_ad_un_file"});
Se vuoi "ascoltare" l'evento di selezione di un file sul JFileChooser, devi aggiungergli un PropertyChangeListener.
Ogni "property" ha un nome (String). JFileChooser ne ha molte di property e c'è la property JFileChooser.SELECTED_FILE_CHANGED_PROPERTY. Nel metodo propertyChange() che dovrai implementare, devi solo prendere il nome della property con getPropertyName() invocato sul PropertyChangeEvent fornito al metodo e verificare se è quello detto sopra.
È più facile a farlo che a dirlo.![]()
Molto semplice, se il JFileChooser ha il modo di selezione FILES_ONLY (solo file, che è il default), basta che nel metodo propertyChange() chiami getSelectedFile() sul JFileChooser e se ritorna diverso da null, allora un file è stato selezionato.Originariamente inviato da Metflar
fino qui c sn riuscito ma devo riuscire a dirgli che deve farlo solo quando è selezionato un file nn una directory
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet