用 Visual C#实现文件下载功能
一.概述:
本文通过一个实例向大家介绍用 Visual C#进行 Internet 通讯编程的一些基本知识。我
们知道.Net 类包含了请求/响应层、应用协议层、传输层等层次。在本程序中,我们运用了
位于请求/响应层的 WebRequest 类以及 WebClient 类等来实现高抽象程度的 Internet 通讯服
务。本程序的功能是完成网络文件的下载。
二.实现原理:
程序实现的原理比较简单,主要用到了 WebClient 类和 FileStream 类。其中 WebClient
类处于 System.Net 名字空间中,该类的主要功能是提供向 URI 标识的资源发送数据和从
URI 标识的资源接收数据的公共方法。我们利用其中的 DownloadFile()方法将网络文件
下载到本地。然后用 FileStream 类的实例对象以数据流的方式将文件数据写入本地文件。
这样就完成了网络文件的下载。
三.实现步骤:
首先,打开 Visual Studio.Net,新建一个 Visual C# Windows 应用程序的工程,不妨命
名为"MyGetCar"。
接着,布置主界面。我们先往主窗体上添加如下控件:两个标签控件、两个文本框控件、
一个按钮控件以及一个状态栏控件。最终的主窗体如下图所示:
完成主窗体的设计,我们接着完成代码的编写。
在理解了基本原理的基础上去完成代码的编写是相当容易。程序中我们主要用到的是
WebClient 类,不过在我们调用 WebClient 类的实例对象前,我们需要用 WebRequest 类的对
象发出对统一资源标识符(URI)的请求。
try
{
WebRequest myre=WebRequest.Create(URLAddress);
}
catch(WebException exp)
{
MessageBox.Show(exp.Message,"Error");
}
这是一个 try-catch 语句,try 块完成向 URI 的请求,catch 块则捕捉可能的异常并显示
异常信息。其中的 URLAddress 为被请求的网络主机名。