1

我的代码如下。我正在尝试下载一个文件,我的应用程序给了我“找不到文件名 - 下载”,然后是“完成”,因为这段代码,但是当我去查看时,实际上并没有下载任何文件。

    private void Form1_Load(object sender, EventArgs e)
    {
        download(@"mp3spi.jar", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\.minecraft\bin\lob\");
    }

    public void download(String filename, String path)
    {
        filenameLabel.Text = filename;
        MessageBox.Show(filename + " Not found - downloading.");
        WebClient webClient = new WebClient();
        webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
        webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressChanged);
        webClient.DownloadFileAsync(new Uri("http://mysite.com/client/" + filename), path);
    }

    public void ProgressChanged(object sender, DownloadProgressChangedEventArgs e)
    {
        progressBar1.Value = e.ProgressPercentage;
    }

    private void Completed(object sender, AsyncCompletedEventArgs e)
    {
        MessageBox.Show("Finished.");
    }

有人可以指出我出了什么问题吗?我想也许它需要以管理员身份运行,但这只是做了同样的事情。

4

1 回答 1

2

您的代码尝试保存到文件夹路径 ("...\lob\"),它不是文件名 (...\lob\my_file.ext")。

WebClient.DownloadFileAsync(Uri Uri地址,字符串文件名)

于 2012-08-24T00:17:53.327 回答