Hallo zusammen,
ich hoffe ich habe richtig gesucht - gefunden habe ich nämlich leider nichts, was mir weiterhilft.
Ich habe ein Applet, Dateien auf meinen FTP hochlädt, funktioniert auch wunderbar, aber ich schaffe es einfach nicht, während dem Upload den aktuellen Status zurückzugeben - ich kann während dem Upload auch nichts im Applet machen - als wenn das Applet völlig ausgelastet wäre.
Ich habe meine AppletKlasse "ImageUploader" u.a. mit folgendem Code:
Und eine Klasse "FTPHandler" mit u.a. folgenden Methoden, die ich hier im Forum entdeckt habe - THX an dieser Stelle!
Jetzt habe ich gedacht ich kann in der for-Schleife der ImageUploader- Klasse das so abfangen, aber ich bekomme er die Anzahl der Bytes, wenn der Upload fertig ist.
Ich habs schon mit Threads versucht (auch nach einem Tutorial hier aus dem Forum), aber das hat auch nicht geklappt.
Hat jemand von euch da eine Idee, wie man das am besten umsetzen könnte?
LG & DANKE im Voraus
Tino
ich hoffe ich habe richtig gesucht - gefunden habe ich nämlich leider nichts, was mir weiterhilft.
Ich habe ein Applet, Dateien auf meinen FTP hochlädt, funktioniert auch wunderbar, aber ich schaffe es einfach nicht, während dem Upload den aktuellen Status zurückzugeben - ich kann während dem Upload auch nichts im Applet machen - als wenn das Applet völlig ausgelastet wäre.
Ich habe meine AppletKlasse "ImageUploader" u.a. mit folgendem Code:
Code:
for (int listI = 0; listI < this.dateien.length; listI++) {
File f = new File(this.dateien[listI]);
try {
fh.upload(f, f.getName());
this.progress.setText("Bisher hochgeladen: " + fh.getBytesLoaded());
} catch (IOException e1) {
e1.printStackTrace();
}
}
Und eine Klasse "FTPHandler" mit u.a. folgenden Methoden, die ich hier im Forum entdeckt habe - THX an dieser Stelle!
Code:
public void upload(File fil, String name) throws IOException {
if (!fil.exists()){
throw new IllegalArgumentException ("The file doesn't exist");
}
OutputStream os = ftpc.put(name);
InputStream is = new FileInputStream (fil);
len = 0;
byte[] buf = new byte[1024];
while ((len = is.read(buf)) >= 0){
os.write(buf, 0, len);
uploadedBytes+=len;
}
is.close();
os.close();
}
public int getBytesLoaded() {
return this.uploadedBytes;
}
Jetzt habe ich gedacht ich kann in der for-Schleife der ImageUploader- Klasse das so abfangen, aber ich bekomme er die Anzahl der Bytes, wenn der Upload fertig ist.
Ich habs schon mit Threads versucht (auch nach einem Tutorial hier aus dem Forum), aber das hat auch nicht geklappt.
Hat jemand von euch da eine Idee, wie man das am besten umsetzen könnte?
LG & DANKE im Voraus
Tino