io ho questo filechooser:
codice:
    private void jMenuItem1KeyPressed(java.awt.event.KeyEvent evt) {                                      
        JFileChooser fc = new JFileChooser();
        FileFilter csvFilter = new FileNameExtensionFilter("File CSV", "csv");
        FileFilter txtFilter = new FileNameExtensionFilter("File TXT", "txt");
        fc.addChoosableFileFilter(csvFilter);
        fc.addChoosableFileFilter(txtFilter);
        int returnVal = fc.showSaveDialog(this);
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File f = fc.getSelectedFile();
            FileFilter selectedFilter = fc.getFileFilter();
            if (f.getName().indexOf('.') == -1) {
                if (selectedFilter == csvFilter) {
                    f = new File(f.getPath() + ".csv");
                } else if (selectedFilter == txtFilter) {
                    f = new File(f.getPath() + ".txt");
                }
            }
            try {
                FileWriter file = new FileWriter(f, true);
                PrintWriter out = new PrintWriter(file);
                out.println(jTextArea1.getText() + "\n" + "Tot entrate: " + jTextField9.getText() + "\nTot uscite: " + jTextField10.getText() + "\nTOT: " + jTextField15.getText() + "\nTot operazioni: " + jTextField16.getText());
                out.close();
            } catch (IOException e) {
                JOptionPane.showMessageDialog(this, e, "ERRORE", JOptionPane.ERROR_MESSAGE);
            }
        }
}
come vedete è inserito in un evento.
per farlo funzionare ho importato questi package:
import javax.swing.*;
import java.io.*;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;

ora, visto che ho vari eventi con questo codice ho pensato di creare un file a se con quel codice da richiamare nei vari eventi.
ho importato gli stesso package:
codice:
package banca;

import javax.swing.*;
import java.io.*;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;

public class AreaFileChooser extends JFrame {
        JFileChooser fc = new JFileChooser();
        FileFilter csvFilter = new FileNameExtensionFilter("File CSV", "csv");
        FileFilter txtFilter = new FileNameExtensionFilter("File TXT", "txt");
        fc.addChoosableFileFilter(csvFilter);
        fc.addChoosableFileFilter(txtFilter);
        int returnVal = fc.showSaveDialog(this);
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File f = fc.getSelectedFile();
            FileFilter selectedFilter = fc.getFileFilter();
            if (f.getName().indexOf('.') == -1) {
                if (selectedFilter == csvFilter) {
                    f = new File(f.getPath() + ".csv");
                } else if (selectedFilter == txtFilter) {
                    f = new File(f.getPath() + ".txt");
                }
            }
            try {
                FileWriter file = new FileWriter(f, true);
                PrintWriter out = new PrintWriter(file);
                out.println(TArea.getJarea().getText() + "\n" + "Tot entrate: " + TArea.getfield9().getText() + "\nTot uscite: " + TArea.getfield10().getText() + "\nTOT: " + TArea.getfield15().getText() + "\nTot operazioni: " + TArea.getfield16().getText());
                out.close();
            } catch (IOException e) {
                JOptionPane.showMessageDialog(this, e, "ERRORE", JOptionPane.ERROR_MESSAGE);
            }
        }
}
mi da però questo errore di compilazione:
codice:
/media/MATTE/Banca/src/banca/AreaFileChooser.java:12: <identifier> expected
        fc.addChoosableFileFilter(csvFilter);
/media/MATTE/Banca/src/banca/AreaFileChooser.java:12: <identifier> expected
        fc.addChoosableFileFilter(csvFilter);
/media/MATTE/Banca/src/banca/AreaFileChooser.java:13: <identifier> expected
        fc.addChoosableFileFilter(txtFilter);
/media/MATTE/Banca/src/banca/AreaFileChooser.java:13: <identifier> expected
        fc.addChoosableFileFilter(txtFilter);
/media/MATTE/Banca/src/banca/AreaFileChooser.java:15: illegal start of type
        if (returnVal == JFileChooser.APPROVE_OPTION) {
/media/MATTE/Banca/src/banca/AreaFileChooser.java:15: <identifier> expected
        if (returnVal == JFileChooser.APPROVE_OPTION) {
/media/MATTE/Banca/src/banca/AreaFileChooser.java:15: ';' expected
        if (returnVal == JFileChooser.APPROVE_OPTION) {
/media/MATTE/Banca/src/banca/AreaFileChooser.java:15: illegal start of type
        if (returnVal == JFileChooser.APPROVE_OPTION) {
/media/MATTE/Banca/src/banca/AreaFileChooser.java:15: ';' expected
        if (returnVal == JFileChooser.APPROVE_OPTION) {
9 errors
/media/MATTE/Banca/nbproject/build-impl.xml:528: The following error occurred while executing this line:
/media/MATTE/Banca/nbproject/build-impl.xml:261: Compile failed; see the compiler error output for details.
perchè??