Ich habe eine einfache FTPClient-Klasse, die Dateien von einem FTP-Server herunterlädt. Ich muss auch den Fortschritt des Downloads überwachen, aber ich sehe keinen Weg wie. Die eigentliche Download-Funktion ist eine einfache Funktion von
(your ftp client name).retrieveFile(arg1,arg2);
Wie kann ich den Download-Fortschritt überwachen?
Danke, Anon.
Sie benötigen einen CountingOutputStream (wie auf Commons IO: Ссылка ). Sie erstellen eine davon, wickeln Sie Ihr Ziel OutputStream darin ein, und dann können Sie das ByteCount bei Bedarf überprüfen, um den Download-Fortschritt zu überwachen.
EDIT: Sie würden so etwas tun:
%Vor%Wenn Ihr Programm Multithread ist, möchten Sie vielleicht den Fortschritt mit einem separaten Thread überwachen (z. B. für ein GUI-Programm), aber das sind alle anwendungsspezifischen Details.
Tags und Links java download apache-commons ftp ftp-client