Tiedoston lähettäminen
FileUploadDialog on modaalinen valintaikkuna, joka on suunniteltu mahdollistamaan käyttäjän tiedostojen lataamisen paikalliselta tiedostojärjestelmältä. Ikkuna estää sovelluksen suorituksen, kunnes käyttäjä valitsee ladattavat tiedostot tai sulkee ikkunan.
Jos haluat tiedostovalitsimen, joka renderöidään suoraan sivun asettelussa ikkunan sijaan, harkitse Upload komponentin käyttämistä.
Käytännöt
FileUploadDialog tarjoaa tavan valita ja ladata tiedostoja, jolloin käyttäjät voivat toimittaa asiakirjoja, kuvia tai muita sovelluksen tarvitsemia tiedostotyyppejä. Käytä showFileUploadDialog() -metodia näyttääksesi ikkunan ja tallentaaksesi ladatun tiedoston.
UploadedFile result = OptionDialog.showFileUploadDialog("Lataa tiedosto");
Tulos
FileUploadDialog palauttaa UploadedFile -objektin, joka sisältää tietoja ladatusta tiedostosta, kuten sen nimi, koko ja sisältö. Jos käyttäjä sulkee dialogin ilman tiedoston valitsemista, tulos on null.
Palautettu UploadedFile -objekti saadaan show() -metodista tai vastaavasta OptionDialog-metodista kuten alla näkyy.
Ladattujen tiedostojen siirtäminen
Oletusarvoisesti webforJ tallentaa ladatut tiedostot väliaikaiseen kansioon, jota siivotaan säännöllisesti. Jos et siirrä tiedostoa muualle, se poistetaan. Tiedoston siirtämiseksi käytä move-metodia ja määritä sijaintipolku.
UploadedFile uploadedFile = OptionDialog.showFileUploadDialog("Valitse ladattava tiedosto");
try {
File file = uploadedFile.move("my/full/path/" + uploadedFile.getSanitizedClientName());
// ... tee jotain tiedoston kanssa
} catch (IOException e) {
// käsittele poikkeus
}
Käytä getSanitizedClientName-metodia saadaksesi puhdistetun version ladatun tiedoston nimestä. Tämä metodi auttaa estämään turvallisuusriskejä, kuten hakemistojen läpi kulkemista tai virheellisiä merkkejä tiedostonimissä, varmistaen tiedostojärjestelmäsi eheyden ja turvallisuuden.
Suodattimet
FileUploadDialog mahdollistaa suodattimien asettamisen rajataksesi ladattavien tiedostojen tyyppejä. Voit konfiguroida suodattimet käyttämällä setFilters(List<FileChooserFilter> filters)-metodia.
FileUploadDialog dialog = new FileUploadDialog(
"Lataa tiedosto",
Arrays.asList(new FileChooserFilter("Tekstitiedostot", "*.txt")));
UploadedFile result = dialog.show();
Palvelin ei vahvista ladattua tiedostoa suodattimien mukaan. Suodattimia sovelletaan vain käyttöliittymässä käyttämisen ohjaamiseksi. Sinun on toteutettava palvelinpuoleinen vahvistus varmistaaksesi, että ladatut tiedostot täyttävät sovelluksesi vaatimukset.
Suurin koko
Käytä setMaxFileSize(Number maxSize)-metodia asettaaksesi suurimman latauskoon tavuina.
dialog.setMaxFileSize(2 * 1024 * 1024); // Aseta suurin koko 2 MB:ksi
Kansainvälistäminen (i18n)
Komponentin otsikot, kuvaukset, etiketit ja viestit ovat täysin muokattavissa käyttämällä FileUploadI18n-luokkaa. Tämä joustavuus mahdollistaa dialogin käyttöliittymän muokkaamisen erityisten paikallistamisvaatimusten tai henkilökohtaisten mieltymysten mukaan.
FileUploadDialog dialog = new FileUploadDialog("Lataa tiedosto");
FileUploadI18n i18n = new FileUploadI18n();
i18n.setUpload("Lataa");
i18n.setCancel("Peruuta");
dialog.setI18n(i18n);
UploadedFile result = dialog.show();
Parhaat käytännöt
- Selkeät ja ytimekkäät kehykset: Varmista, että kehysviesti selkeästi selittää, mitä käyttäjältä pyydetään lataamaan.
- Sopivat suodattimet: Aseta tiedostosuodattimia, jotka vastaavat vaadittuja tiedostotyyppejä varmistaaksesi, että käyttäjät lataavat asiaankuuluvia tiedostoja.
- Johdonmukainen teema: Yhdistä dialogin ja latauskentän teemat sovelluksesi muotoiluun.
- Yliannostuksen minimointi: Käytä tiedoston latausdialogeja säästeliäästi käyttäjäturhauman välttämiseksi. Varaa ne toimille, jotka vaativat erityisiä käyttäjän tiedostolatauksia.
