Ich würde gerne wissen, wie man eine Datei von einem Vaadin Upload-Komponente erhalten. Hier ist das Beispiel auf der Vaadin Website , aber es enthält nicht, wie Sie es außer etwas über OutputStreams speichern. Hilfe!So speichern Sie hochgeladene Datei
-1
A
Antwort
2
Um eine Datei-Upload in Vaadin erhalten Sie Receiver
Schnittstelle implementieren müssen, weicht man mit einer receiveUpload(filename, mimeType)
Methode liefert, verwendet, um die Informationen zu erhalten. Die einfachste Code, dies zu tun wäre (Genommen als Beispiel aus Vaadin 7 docs):
class FileUploader implements Receiver {
private File file;
private String BASE_PATH="C:\";
public OutputStream receiveUpload(String filename,
String mimeType) {
// Create upload stream
FileOutputStream fos = null; // Stream to write to
try {
// Open the file for writing.
file = new File(BASE_PATH + filename);
fos = new FileOutputStream(file);
} catch (final java.io.FileNotFoundException e) {
new Notification("Could not open file<br/>",
e.getMessage(),
Notification.Type.ERROR_MESSAGE)
.show(Page.getCurrent());
return null;
}
return fos; // Return the output stream to write to
}
};
Damit die Uploader
Sie eine Datei in C:\
schreiben. Wenn Sie etwas wünschen, nachdem der Upload erfolgreich abgeschlossen wurde, oder nicht, können Sie oder FailedListener
implementieren. Nehmen wir das Beispiel oben, könnte das Ergebnis (mit SucceededListener
) sein:
class FileUploader implements Receiver {
//receiveUpload implementation
public void uploadSucceeded(SucceededEvent event) {
//Do some cool stuff here with the file
}
}
Verwandte Themen
- 1. Javascript: Speichern hochgeladene Datei
- 2. So speichern Sie hochgeladene Bild in Datei mit PHP
- 3. So speichern Sie die hochgeladene Datei in JSF
- 4. So speichern Sie das hochgeladene Bild in IndexedDB Javascript
- 5. Django: Speichern Sie eine hochgeladene Datei in einem FileField
- 6. Speichern hochgeladene Datei DB in benutzerdefinierten Handler
- 7. So speichern Sie die hochgeladene Datei in Server (meine Website) mit Java
- 8. So aktualisieren Sie die hochgeladene Datei mit yii2
- 9. So löschen Sie die hochgeladene Datei in Sailsjs (req.file)?
- 10. Wie hochgeladene Datei
- 11. So bearbeiten Sie hochgeladene Daten in rshiny
- 12. So löschen Sie hochgeladene Bilder plus Bildtabellenaufzeichnungen
- 13. So bearbeiten Sie hochgeladene CSV-Dateien mit Django?
- 14. Laravel 5.1: Hochgeladene Datei als alte Eingabe speichern
- 15. Hochgeladene Datei vom Benutzer mit Bot-Framework speichern C#
- 16. Lesen Sie mehrere hochgeladene CSV-Datei php
- 17. Angular - POST hochgeladene Datei
- 18. Hochgeladene Dateien auf mehreren Seiten speichern
- 19. Verschieben Sie die hochgeladene Datei im Netzlaufwerk
- 20. So speichern Sie Excel-Datei als CSV?
- 21. So speichern Sie eine Datei in Mungo
- 22. So speichern Sie die Datei google-services.json
- 23. So speichern Sie Rails Eingangsparameter in Datei
- 24. So speichern und senden Sie eine Datei
- 25. So speichern Sie Array in Datei schnell?
- 26. erkennen, ob hochgeladene Datei
- 27. Bearbeiten hochgeladene Datei
- 28. So speichern Sie hochgeladene Dateien als BLOB in mysql DB mit JSF und PrimeFaces
- 29. ASP.NET Webservice korrumpiert hochgeladene Datei
- 30. So entpacken Sie eine hochgeladene Zip-Datei mit Spring in Java
Wie gesagt in docs, Sie haben eine Methode namens 'receiveUpload'. In dieser Methode nehmen Sie einen Dateinamen und seinen Mime-Typ. Dann müssen Sie einen 'OutputStream' [(Java 7 doc)] (https://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html) mit einer' Datei' mit diesem Dateinamen erstellen und gib es zurück ... Natürlich muss sich die 'Datei' dort befinden, wo du den Upload speichern willst. – Shirkam
@Shirkam Kann ich Code haben? als Speicherort ist C: \ –
Ja, warum nicht, stackoverflow ist Ihre kostenlose Programmierer-Community ... –