jfilechoo

Mattepuffo's logo
Usare DirectoryChooser in JavaFX

Usare DirectoryChooser in JavaFX

In Java Swing abbiamo il JFileChooser che può essere usato per selezionare sia file che directory usando un flag apposito.

Ho scoperto che in JavaFX ci sono due componenti distinti per queste operazioni.

Oggi vediamo DirectoryChooser, che ci permette di selezionare solo directory.

Mattepuffo's logo
Riempire un JTree con file in maniera ricorsiva

Riempire un JTree con file in maniera ricorsiva

Quello che vogliamo ottenere è un JTree riempito con directory e file in maniera ricorsiva.

Quindi, scelta la directory iniziale attraverso un JFileChooser, riempiamo il JTree.

Cominciamo dal JFileChooser:

import java.io.File;
import javax.swing.JFileChooser;

public class FileChooserOpen extends JFileChooser {

    private File dir = null;

    public FileChooserOpen() {
        super("Scegli directory");
        setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        setAcceptAllFileFilterUsed(false);
    }

    @Override
    public void approveSelection() {
        dir = getSelectedFile();
        super.approveSelection();
    }

    public File getDir() {
        return dir;
    }
}

A questo punto, impostiamo un evento dove vi pare, che lancia il JFileChooser e prende la directory scelta.

Mattepuffo's logo
Esportare una JList in Java

Esportare una JList in Java

JList è un componente SWING che rappresenta una serie di oggetti sotto forma di lista.

Qui avevo spiegato come caricare una JLlist da una file XML per esempio.

Oggi vediamo come esportarli in formato TXT.

Inoltre integreremo utto con il solit JFileChooser per decidere dove salvare il file.

Prima di tutto nel vostro JFrame preparate l'evento che poi richiamerà il JFC (ad esempio un menu o un bottone).

Poi preparate il JFC; tipo questo:

import java.io.File;
import java.io.IOException;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileFilter;

public class FileChooserTxt {

    private static File f = null;

    public static String salva() throws IOException {
        JFileChooser fc = new JFileChooser();
        fc.setDialogTitle("Save TXT");
        fc.setApproveButtonText("Save");
        fc.setApproveButtonToolTipText("Approve file");

        FileFilter txtFilter = new GenericFileFilter("File *.txt", "txt");
        fc.setFileFilter(txtFilter);

        int returnVal = fc.showSaveDialog(fc);
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            f = fc.getSelectedFile();
            FileFilter selectedFilter = fc.getFileFilter();
            if (f.getName().indexOf('.') == -1) {
                f = new File(f.getPath() + ".txt");
            }
        }
        return f.toString();
    }
}

Qui ho messo un solo filtro perchè l'esportazione la faccio solo in TXT.

Mattepuffo's logo
Leggere i tag MP3 con Java

Leggere i tag MP3 con Java

In giro si trovano varie librerie per leggere i tag dei file MP3 con java.

Tra le tante ho scelto questa: Jid3lib.

Prima di tutto considerate che esistono varie versioni di tag.

Qui potete una descrizione.

A questo punto partiamo; scaricate la libreria e aggiungetela al vostro progetto.

Quello di cui abbiamo bisogno è uno o più files da scansionare.

Se ad esempio volete scegliere il tutto tramite JFileChooser:

public class Main {

    private static File[] arrayFiles;

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                JFileChooser fc = new JFileChooser(System.getProperty("user.home"));
                FileFilter mp3Filter = new FileNameExtensionFilter("MP3", "mp3");
                fc.setFileFilter(mp3Filter);
                fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
                fc.setMultiSelectionEnabled(true);
                int returnVal = fc.showOpenDialog(fc);
                if (returnVal == JFileChooser.APPROVE_OPTION) {
                    arrayFiles = fc.getSelectedFiles();
                }
                FrameList fl = new FrameList(arrayFiles);
                fl.setVisible(true);
            }
        });
    }
}


Dove FrameList è uno JFrame con dentro una JTextArea o un componente affine.

Mattepuffo's logo
Creare file Excel con Java

Creare file Excel con Java

Creare file Excel con Java è più facile di quello che sembra.

Vi posto il mio caso reale, e cioè l'esportazione di una JTable in formato Excel.

Avevo già parlato di come esportare una JTable, ma questo metodo è nettamente migliore.

Il motivo è che creeremo un file xls ben formato usando una libreria apposita: JExcelApi.

Scaricate la libreria e aggiuntete il jar nella vostra applicazione.

Se tutto è andato bene potete importare i package jxl.*.