Dateidialog zum Speichern
FileSaveDialog
ist ein modaler Dialog, der es den Benutzern ermöglicht, eine Datei an einem bestimmten Speicherort im Server-Dateisystem zu speichern. Der Dialog blockiert die Ausführung der Anwendung, bis der Benutzer einen Dateinamen angibt und die Aktion bestätigt oder den Dialog abbricht.
OptionDialog.showFileSaveDialog("Speichern Sie Ihre Datei");
Verwendungen
Der FileSaveDialog
bietet eine vereinfachte Methode zum Speichern von Dateien im Dateisystem und bietet benutzerkonfigurierbare Optionen für das Benennen von Dateien und den Umgang mit vorhandenen Dateien.
Code anzeigen
- Java
Ergebnis
Der FileSaveDialog
gibt den ausgewählten Pfad als String zurück. Wenn der Benutzer den Dialog abbricht, wird das Ergebnis null
sein.
Dieser Dialog führt tatsächlich keine Dateien zu speichern, sondern gibt den Dateinamen zurück, den der Benutzer ausgewählt hat.
Der resultierende String wird von der Methode show()
oder der entsprechenden Methode OptionDialog
zurückgegeben, wie im Folgenden gezeigt.
String result = OptionDialog.showFileSaveDialog(
"Speichern Sie Ihre Datei", "/home/user/documents", "report.xls");
if (result != null) {
OptionDialog.showMessageDialog("Datei gespeichert unter: " + path, "Ausgewählter Pfad");
} else {
OptionDialog.showMessageDialog("Kein Pfad ausgewählt", "Ausgewählter Pfad",
MessageDialog.MessageType.ERROR);
}
Aktion bei Existenz
Der FileSaveDialog
bietet konfigurierbares Verhalten, wenn eine Datei mit dem angegebenen Namen bereits existiert:
- ACCEPT_WITHOUT_ACTION: Die Auswahl wird ohne zusätzliche Benutzeraktion akzeptiert.
- ERROR_DIALOGUE: Dem Benutzer wird ein Fehlermeldungsdialog angezeigt; die Auswahl ist nicht erlaubt.
- CONFIRMATION_DIALOGUE: Dem Benutzer wird ein Dialog zur Bestätigungsanfrage angezeigt. Dies ist die Standardoption.
FileSaveDialog dialog = new FileSaveDialog(
"Speichern Sie Ihre Datei", "/home/user/documents", "report.xls");
dialog.setExistsAction(FileSaveDialog.ExistsAction.ERROR_DIALOGUE);
String result = dialog.show();
Auswahlmodus
Der FileSaveDialog
unterstützt verschiedene Auswahlmodi, die es Ihnen ermöglichen, die Auswahlmethode an Ihre spezifischen Bedürfnisse anzupassen:
- DATEIEN: Erlaubt nur die Auswahl von Dateien.
- VERZEICHNISSE: Erlaubt nur die Auswahl von Verzeichnissen.
- DATEIEN UND VERZEICHNISSE: Erlaubt die Auswahl von sowohl Dateien als auch Verzeichnissen.
Anfangspfad
Geben Sie das Verzeichnis an, in dem der Dialog geöffnet wird, indem Sie den Anfangspfad festlegen. Dies hilft den Benutzern, in einem logischen Verzeichnis für ihre Speicheroperation zu beginnen.
FileSaveDialog dialog = new FileSaveDialog(
"Speichern Sie Ihre Datei", "/home/user/documents", "report.xls");
String result = dialog.show();
Einschränkung
Sie können den Dialog auf ein bestimmtes Verzeichnis beschränken, um zu verhindern, dass Benutzer außerhalb davon navigieren, indem Sie die Methode setRestricted(boolean restricted)
verwenden.
FileSaveDialog dialog = new FileSaveDialog(
"Speichern Sie Ihre Datei", "/home/user/documents", "report.xls");
dialog.setRestricted(true);
dialog.show();
Dateiname
Setzen Sie einen Standarddateinamen für die Speicheroperation, um den Benutzern zu helfen und Fehler zu minimieren.
FileSaveDialog dialog = new FileSaveDialog("Speichern Sie Ihre Datei");
dialog.setName("report.xls");
String result = dialog.show();
Internationalisierung (i18n)
Die Titel, Beschreibungen, Beschriftungen und Nachrichten innerhalb der Komponente sind vollständig anpassbar, indem die Klasse FileSaveI18n
verwendet wird. Dadurch kann der Dialog an verschiedene Lokalisierungs- oder Personalisierungsanforderungen angepasst werden.
FileSaveDialog dialog = new FileSaveDialog("Speichern Sie Ihre Datei");
FileChooserI18n i18n = new FileChooserI18n();
i18n.setChoose("Wählen");
i18n.setCancel("Abbrechen");
dialog.setI18n(i18n);
Filter
Der FileSaveDialog
ermöglicht es Ihnen, Filter festzulegen, um die Arten von Dateien zu beschränken, die gespeichert werden können, indem Sie die Methode setFilters(List<FileSaveFilter> filters)
verwenden.
Code anzeigen
- Java
Benutzerdefinierte Filter
Sie können benutzerdefinierte Filter aktivieren, um den Benutzern zu ermöglichen, ihre eigenen Dateifilter mithilfe der Methode setCustomFilters(boolean customFilters)
zu definieren. Filter werden standardmäßig im lokalen Speicher gespeichert und bei nachfolgenden Dialogaufrufen wiederhergestellt.
FileSaveDialog dialog = new FileSaveDialog("Speichern Sie Ihre Datei", "/home/user/documents");
dialog.setCustomFilters(true);
String result = dialog.show();
Best Practices
- Vordefinierte Dateinamen: Stellen Sie einen logischen Standarddateinamen bereit, wo dies zutreffend ist.
- Bestätigen Sie Überschreibungen: Verwenden Sie
CONFIRMATION_DIALOGUE
fürExistsAction
, um versehentliche Überschreibungen zu verhindern. - Intuitiver Anfangspfad: Setzen Sie einen Anfangspfad, der den Erwartungen der Benutzer entspricht.
- Internationalisierung: Passen Sie den Text des Dialogs an, um die Benutzerfreundlichkeit für internationale Zielgruppen zu verbessern.
- Dateitypfilter: Nutzen Sie Filter, um die Dateitypen einzuschränken und Benutzer zu gültigen Dateierweiterungen zu führen.