G
Guest
Gast
Hallo,
ich hab hier ein Beispiel-Prog wo ich mit JFileChooser eine Datei auswähle, doch wenn ich den Abbrechen-Button drücke, wird das ganze Programm geschlossen, ich will aber dass nur der JFileChosser geschlossen wird, was kann ich anstatt von System.exit(0); verwenden?
Gruss
ich hab hier ein Beispiel-Prog wo ich mit JFileChooser eine Datei auswähle, doch wenn ich den Abbrechen-Button drücke, wird das ganze Programm geschlossen, ich will aber dass nur der JFileChosser geschlossen wird, was kann ich anstatt von System.exit(0); verwenden?
Code:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileFilter;
public class Sample {
public void offnenFens() {
boolean selected = false;
while (!selected) {
String home = System.getProperty("user.home");
JFileChooser fc = new JFileChooser(home);
fc.setFileFilter(new FileFilter() {
@Override
public boolean accept(File f) {
return f.isDirectory()
|| f.getName().toLowerCase().endsWith(".txt");
}
@Override
public String getDescription() {
return "Texte";
}
});
int state = fc.showOpenDialog(null);
if (state == JFileChooser.APPROVE_OPTION) {
selected = true;
File file = fc.getSelectedFile();
laden(file);
} else
System.exit(0);
}
}
private void laden(File file) {
try {
BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
String str;
while ((str = bufferedReader.readLine()) != null) {
System.out.println(str);
}
bufferedReader.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* @param args
*/
public static void main(String[] args) {
Sample axel = new Sample();
axel.offnenFens();
}
}
Gruss