Erstellen eines Sicherungsdialogs mit JFileChooser
Wir haben gesehen wie man eine Datei mit JFileChooser öffnet, Um nun das Dialogfeld zum Speichern einer Datei in Java aufzurufen, müssen wir die Methode aufrufen showSaveDialog der Klasse JFileChooser. Das Dialogfeld zum Speichern sieht genauso aus wie das Dialogfeld in der Eröffnung, mit Ausnahme des Fenstertitels und des Textes der Schaltfläche zum Genehmigen des Vorgangs.Das Dialogfeld zum Speichern wird mit diesen beiden Codezeilen angezeigt:
//instanziieren JFileChooser
final JFileChooser fc = new JFileChooser();
//Aufrufen der showSaveDialog-Methode
int valueour = fc.showSaveDialog(window);
Die JFileChooser-Instanz ist zum Öffnen und Speichern von Dialogen identisch, daher müssen Sie dieselbe Instanz verwenden. Dateiauswahl und vermeiden Sie es, mehrere Versionen zu erstellen.
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.Datei;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class SaveDialog {
public static void main(String[] args) {
final JFrame window = new JFrame();
window.setSize(200,200);
window.setLocationRelativeTo(null);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setVisible(true);
JMenuBar jmb = new JMenuBar();
JMenu jm = new JMenu("Ficher");
JMenuItem Save = new JMenuItem("Save");
jm.add(Speichern);
jmb.add(jm);
window.add(jmb,BorderLayout.NORTH);
JFileChooser fc = new JFileChooser();
Save.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Automatisch generierte Methode stub
int val_retour = fc.showSaveDialog(window);
if (val_retour == JFileChooser.APPROVE_OPTION) {
Datei Datei = fc.getSelectedFile();
//zeigt den absoluten Pfad der Datei an
System.out.println("Absoluter Pfad: "+file.getAbsolutePath()+"\n");
} else {
System.out.println("Registrierung wird abgebrochen\n");
}
}
});
}
}
Die Konsole:
Absoluter Pfad: C:\Benutzer\VAIO\Dokumente\CC++\test.txtSie können die Dateiauswahlmodus. Die folgende Codezeile ermöglicht es beispielsweise, nur die Ordner in JFileChooser:
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);Ein weiterer Auswahlmodus ist FILES_AND_DIRECTORIES. Die Standardeinstellung ist FILES_ONLY.
References
Oracle Doc:So verwenden Sie die Dateiauswahl
StackOverFlow:Wie speichere ich eine Datei mit JFileChooser.showSaveDialog?