我试图下载多个文件,但它没有按照我的希望工作。 有人能告诉我这个脚本有什么问题吗,因为我已经尝试了很多东西,真的不知道该怎么做了。下载多个文件WebClient
public static void DownloadFile(string url)
{
WebClient client = new WebClient();
var name = url.Substring(url.LastIndexOf('/')).Remove(0, 1);
foreach (var item in urls)
{
client.DownloadFile(item, "C:\\" + name);
}
}
private void btnGo_Click(object sender, EventArgs e)
{
urls.Add("url1");
urls.Add("url2");
urls.Add("url3");
Parallel.ForEach(urls,
new ParallelOptions { MaxDegreeOfParallelism = 10 },
DownloadFile);
}
using (var sr = new StreamReader(HttpWebRequest.Create(url).GetResponse().GetResponseStream()))
{
using (var sw = new StreamWriter(url.Substring(url.LastIndexOf('/'))))
{
sw.Write(sr.ReadToEnd());
}
}
答案就在这里 http://stackoverflow.com/questions/6992553/how-do-i-async-download-multiple-files-using-webclient-but-one-at-a-time – 2012-07-11 01:36:02
@GX。我已经尝试过,但无法完成它的工作:(。 – 2012-07-11 01:39:13
你的代码在哪里准确地打破?你调试了吗? – 2012-07-11 01:41:53