C# Downloading a range of files
<p>I know a few similar questions have been asked on how to download files using WebClient.  I can download individual files perfectly fine, but I want to download a range of files.  Anywhere from 1-6000 files.  I can download them just fine into my current directory, but I am stumped on how to download them to a different directory based upon where they're being downloaded from.  Do I need to temporarily change the current working directory just before downloading them?</p>

<p>And slightly on the same topic, I'm stuck on how to verify the files exist before downloading them.  I don't want to waste bandwidth or diskspace with empty files..  Here's what I have so far:</p>

<pre><code>            for (int x = 1; x &lt;= 6000; x++)
            {
                pbsscount = x.ToString();

                // Used for downloading file
                string directoryName = textBox1.Text.ToString().Replace(":", "_");
                if (!Directory.Exists(textBox1.Text))

                    Directory.CreateDirectory(directoryName.Substring(7));
                string wholePBSSurl = textBox1.Text + "/" + "pb" + pbsscount.PadLeft(6, '0') + ".png";

                // Used for saving file, file name in directory
                string partPBSSurl = "pb" + pbsscount.PadLeft(6, '0') + ".png";

                Uri uri2 = new Uri(wholePBSSurl);

                //if (fileExists(wholePBSSurl))
                //{

                    // Initialize downloading info, grab progressbar info
                    WebClient webClient = new WebClient();
                    webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
                    webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressChanged);

                    // Save file to folder
                    //webClient.DownloadFileAsync(uri2, textBox1.Text + "/" + partPBSSurl);
                    webClient.DownloadFileAsync(uri2, partPBSSurl);
                //}
            }
</code></pre>
