Hallo,
ich habe 2 Probleme mit meinem "Datei speichern unter" Dialog:
1. Die Methode "this.manager.getFileName()" gibt einen Dateinamen zurück, den ich als Vorschlag im Dialog verwenden möchte. Leider habe ich keine Ahnung wie ich den Dateinamen als Vorschlag setzen kann.
2. Vor dem Aufruf des Dialogs soll überprüft werden, ob ein Inhalt für die neue Datei vorhanden ist. Die Schleife meldet aber grundsätzlich zurück, dass kein FileContent vorhanden ist (null bzw. ""). Wo liegt mein Fehler?
ich habe 2 Probleme mit meinem "Datei speichern unter" Dialog:
1. Die Methode "this.manager.getFileName()" gibt einen Dateinamen zurück, den ich als Vorschlag im Dialog verwenden möchte. Leider habe ich keine Ahnung wie ich den Dateinamen als Vorschlag setzen kann.
2. Vor dem Aufruf des Dialogs soll überprüft werden, ob ein Inhalt für die neue Datei vorhanden ist. Die Schleife meldet aber grundsätzlich zurück, dass kein FileContent vorhanden ist (null bzw. ""). Wo liegt mein Fehler?
Java:
public void saveFileDialog() {
if (this.manager.getFileContent() != null
&& !(this.manager.getFileContent().equals(""))) {
JOptionPane.showMessageDialog( this.myframe,
"Kein Inhalt zum speichern vorhanden!" );
} else
{
final JFileChooser chooser = new JFileChooser("Speicherort wählen");
chooser.setDialogType(JFileChooser.SAVE_DIALOG);
chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
final File file = new File( this.manager.getFileName() );
chooser.setCurrentDirectory(file);
chooser.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent e) {
if (e.getPropertyName().equals(
JFileChooser.SELECTED_FILE_CHANGED_PROPERTY)
|| e.getPropertyName().equals(
JFileChooser.DIRECTORY_CHANGED_PROPERTY)) {
// final File f = (File) e.getNewValue();
}
}
});
chooser.setVisible(true);
final int result = chooser.showSaveDialog(null);
if (result == JFileChooser.APPROVE_OPTION) {
File outputVerzFile = chooser.getSelectedFile();
this.manager.setFileName(outputVerzFile.getPath());
}
chooser.setVisible(false);
try {
fileWriter();
} catch (IOException e1) {
JOptionPane.showMessageDialog(this.myframe, e1);
}
}
}