Tuesday, June 06, 2006

Multi-threaded file download manager - by Shailen Sukul

Introduction



A few months ago, my lovely wife was downloading her lecture notes from her university website, and I noticed that she had to manually click on every file to save it to the hard disk.

I also noticed that all the hyperlinks were on the same page, and the documents she was downloading were either Word documents or PowerPoint presentations.

Right then, a little light bulb went on in my head, and I decided to build her a file download utility. The requirements were simple:

* I should be able to point to a web page and filter URLs on it. For example, "*.doc" should give me a collection of URLs that have .doc at the end of the link.
* From the list of available files, I should be able to select the files I want to download.
* I should be able to download my selected files simultaneously.
* I should be able to nominate the number of simultaneous threads for download.
* I should be able to cancel a download at any point in time.
* I should be informed of the download status of each selected file.
* I do not want to re-download files that I have downloaded before.

Code Project Link

No comments: