使用 C# 从 Web 下载文件
WebClient 类使得从 Web 下载文件并将其保存在 C# 中的本地文件中变得非常容易。以下代码显示了单击“下载”按钮时程序如何响应。
代码只是创建一个WebClient对象并调用其DownloadFile方法,将远程文件的 URL 和目标文件的名称传递给它。这就是从 Web 下载文件所需要做的全部工作,至少在简单情况下是这样。(如果您需要穿过防火墙或文件管理器不公开,事情就会变得更加复杂。)
完整代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
namespace howto_download_file
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
string filename = Application.StartupPath;
if (!filename.EndsWith("\\")) filename += "\\";
txtLocalFile.Text = filename + "howto_download_file.zip";
}
private void btnDownload_Click(object sender, EventArgs e)
{
this.Cursor = Cursors.WaitCursor;
Application.DoEvents();
try
{
// Make a WebClient.
WebClient web_client = new WebClient();
// Download the file.
web_client.DownloadFile(txtRemoteFile.Text, txtLocalFile.Text);
MessageBox.Show("Done");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Download Error",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
this.Cursor = Cursors.Default;
}
}
}