PDA

Visualizza la versione completa : [Java] file dialog e filenamefilter


netarrow
03-09-2004, 16:30
ciao,

ho un problemino con l'utilizzo dell'interfaccia FilenameFilter in una FileDialog, ecco il mio metodo:



public void saveAs() throws IOException {
fc = new FileDialog(parent);
fc.setFilenameFilter(this);
fc.setMode(FileDialog.SAVE);
fc.setVisible(true);
String dir = fc.getDirectory();
String fi = fc.getFile();
if(dir != null && fi != null) {
file = new File(dir + fi);
fos = new FileOutputStream(file);
fos.write(parent.getSource().getBytes());
fos.close();
salvato = true;
edit = false;
}
}





fc.setFilenameFilter(this);


a setFilenameFilter passo this, quindi l'oggetto chiamante, che è un oggetto Document creato da me che implementa FilenameFilter e quindi il metodo accept così:



public boolean accept(File dir, String name) {
return name.endsWith(".java");
}


Però quando eseguo la FileDialog mostra tutto.
Sapreste dirmi dov'è l'errore? Forse dovrei usare una JFileChooser?

:ciauz: e grazie

anx721
03-09-2004, 16:47
Prova con JFileChooser:



JFileChooser chooser = new JFileChooser();
// Note: source for ExampleFileFilter can be found in FileChooserDemo,
// under the demo/jfc directory in the Java 2 SDK, Standard Edition.
ExampleFileFilter filter = new ExampleFileFilter();
filter.addExtension("jpg");
filter.addExtension("gif");
filter.setDescription("JPG & GIF Images");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this file: " +
chooser.getSelectedFile().getName());
}

netarrow
03-09-2004, 19:07
Provo, grazie.

:ciauz:

netarrow
03-09-2004, 21:39
Si, funziona, ancora grazie.

:ciauz:

Loading