Tim*_*son 41
WebClient相当有限; 如果切换到使用WebRequest,则可以发送HTTP HEAD请求.发出请求时,您应该收到错误(如果文件丢失)或WebResponse具有有效ContentLength属性.
编辑:示例代码:
WebRequest request = WebRequest.Create(new Uri("http://www.example.com/"));
request.Method = "HEAD";
using(WebResponse response = request.GetResponse()) {
Console.WriteLine("{0} {1}", response.ContentLength, response.ContentType);
}
Run Code Online (Sandbox Code Playgroud)
小智 5
当您使用WebClient类请求文件时,404 错误(找不到文件)将导致异常。最好的方法是处理该异常并使用可以设置的标志来查看文件是否存在。
示例代码如下:
System.Net.HttpWebRequest request = null;
System.Net.HttpWebResponse response = null;
request = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create("www.example.com/somepath");
request.Timeout = 30000;
try
{
response = (System.Net.HttpWebResponse)request.GetResponse();
flag = 1;
}
catch
{
flag = -1;
}
if (flag==1)
{
Console.WriteLine("File Found!!!");
}
else
{
Console.WriteLine("File Not Found!!!");
}
Run Code Online (Sandbox Code Playgroud)
您可以将代码放在相应的 if 块中。希望能帮助到你!