File Opslaan
FileSaveDialog is een modaal dialoogvenster dat is ontworpen om gebruikers in staat te stellen een bestand op te slaan op een opgegeven locatie in het serverbestandssysteem. Het dialoogvenster blokkeert de uitvoering van de applicatie totdat de gebruiker een bestandsnaam opgeven en de actie bevestigt of het dialoogvenster annuleert.
Gebruik
De FileSaveDialog biedt een gestroomlijnde methode om bestanden op te slaan naar het bestandssysteem, met gebruikersconfigureerbare opties voor bestandsnamen en het omgaan met bestaande bestanden.
Resultaat
De FileSaveDialog retourneert het geselecteerde pad als een string. Als de gebruiker het dialoogvenster annuleert, wordt de uitkomst null.
Dit dialoogvenster zorgt er niet voor dat er daadwerkelijk bestanden worden opgeslagen, maar retourneert de bestandsnaam die de gebruiker heeft geselecteerd.
De resulterende string wordt geretourneerd vanuit de show()-methode of de equivalente OptionDialog-methode zoals hieronder gedemonstreerd.
String result = OptionDialog.showFileSaveDialog(
"Bewaar uw bestand", "/home/user/documents", "rapport.xls");
if (result != null) {
OptionDialog.showMessageDialog("Geselecteerd pad: " + result, "Pad Geselecteerd");
} else {
OptionDialog.showMessageDialog("Er is geen pad geselecteerd", "Pad Geselecteerd",
MessageDialog.MessageType.ERROR);
}
Bestaan actie
De FileSaveDialog biedt configureerbaar gedrag wanneer er al een bestand met de opgegeven naam bestaat:
- ACCEPT_WITHOUT_ACTION: De selectie wordt geaccepteerd zonder verdere actie van de gebruiker.
- ERROR_DIALOGUE: De gebruiker krijgt een foutdialoog te zien; de selectie is niet toegestaan.
- CONFIRMATION_DIALOGUE: De gebruiker krijgt een dialoog te zien waarin om bevestiging wordt gevraagd. Dit is de standaardinstelling.
FileSaveDialog dialog = new FileSaveDialog(
"Bewaar uw bestand", "/home/user/documents", "rapport.xls");
dialog.setExistsAction(FileSaveDialog.ExistsAction.ERROR_DIALOGUE);
String result = dialog.show();
Selectiemodus
De FileSaveDialog ondersteunt verschillende selectiemodi, waardoor je de selectie methode kunt afstemmen op je specifieke behoeften:
- BESTANDEN: Maakt alleen de selectie van bestanden mogelijk.
- DIRECTORIES: Maakt alleen de selectie van mappen mogelijk.
- BESTANDEN_EN_DIRECTORIES: Maakt de selectie van zowel bestanden als mappen mogelijk.
Beginpad
Specificeer de directory waar het dialoogvenster zal openen met behulp van het beginpad. Dit helpt gebruikers om te beginnen in een logische directory voor hun opslaanoperatie.
FileSaveDialog dialog = new FileSaveDialog(
"Bewaar uw bestand", "/home/user/documents", "rapport.xls");
String result = dialog.show();
Beperking
Je kunt het dialoogvenster beperken tot een specifieke directory, zodat gebruikers zich niet buiten deze directory kunnen navigeren met behulp van de setRestricted(boolean restricted)-methode.
FileSaveDialog dialog = new FileSaveDialog(
"Bewaar uw bestand", "/home/user/documents", "rapport.xls");
dialog.setRestricted(true);
dialog.show();
Bestandsnaam
Stel een standaard bestandsnaam in voor de opslaan-operatie om gebruikers te begeleiden en fouten te minimaliseren.
FileSaveDialog dialog = new FileSaveDialog("Bewaar uw bestand");
dialog.setName("rapport.xls");
String result = dialog.show();
Internationalisatie (i18n)
Gebruik FileChooserI18n om de titels, beschrijvingen, labels en berichten van het dialoogvenster aan te passen voor verschillende lokale instellingen of applicatie-eisen.
FileSaveDialog dialog = new FileSaveDialog("Bewaar uw bestand");
FileChooserI18n i18n = new FileChooserI18n();
i18n.setChoose("Kies");
i18n.setCancel("Annuleren");
dialog.setI18n(i18n);
Filters
De FileSaveDialog stelt je in staat om filters in te stellen om de types bestanden die opgeslagen kunnen worden te beperken met behulp van de setFilters(List<FileChooserFilter> filters)-methode.
Aangepaste filters
Je kunt aangepaste filters inschakelen zodat gebruikers hun eigen bestandsfilters kunnen definiëren met behulp van de setCustomFilters(boolean customFilters)-methode. Filters worden standaard opgeslagen in de lokale opslag en hersteld bij volgende oproepen van het dialoogvenster.
FileSaveDialog dialog = new FileSaveDialog("Bewaar uw bestand", "/home/user/documents");
dialog.setCustomFilters(true);
String result = dialog.show();
Best practices
- Vooraf gedefinieerde bestandsnamen: Bied een logische standaardbestandsnaam waar van toepassing.
- Bevestig overschrijvingen: Gebruik
CONFIRMATION_DIALOGUEvoorExistsActionom onopzettelijke overschrijvingen te voorkomen. - Intuïtief beginpad: Stel een beginpad in dat overeenkomt met de verwachtingen van de gebruiker.
- Internationalisatie: Pas de tekst van het dialoogvenster aan om de bruikbaarheid voor internationale doelgroepen te verbeteren.
- Bestandstypefilters: Maak gebruik van filters om bestandstypen te beperken en gebruikers te begeleiden naar geldige bestandsextensies.
