HTTP资源下检测URL地址下文件大小

 代码:

 /// <summary>
        /// HTTP资源下检测URL地址下文件大小
        /// </summary>
        /// <param name="Url"></param>
        /// <returns></returns>
        public static double GetSizeURL(string Url)
        {
            double length = 0;
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
                request.Timeout = 3000;
                request.Method = "HEAD";
                HttpWebResponse res = (HttpWebResponse)request.GetResponse();
                if (res.StatusCode == HttpStatusCode.OK)
                {
                    length = res.ContentLength;
                }
                res.Close();
            }
            catch
            {

            }
            return Math.Ceiling(length / 1024.0) / 1024f;//KB;
        }

备注:

  HttpWebRequest 类对 WebRequest 中定义的属性和方法提供支持,也对使用户能够直接与使用 HTTP 的服务器交互的附加属性和方法提供支持。

  不要使用 HttpWebRequest 构造函数。使用 WebRequest.Create 方法初始化新的 HttpWebRequest 对象。如果统一资源标识符 (URI) 的方案是 http://https://,则 WebRequest.Create 返回 HttpWebRequest 对象。

  

  HttpWebResponse.StatusCode 属性 :

  StatusCode 参数是一个指示 HTTP 响应状态的数字。在 HttpStatusCode 类中定义了所需的状态值。 

  HttpStatusCode 枚举:

 成员名称说明
  OK 等效于 HTTP 状态 200。OK 指示请求成功,且请求的信息包含在响应中。这是最常接收的状态代码。
  NotFound 等效于 HTTP 状态 404。NotFound 指示请求的资源不在服务器上。 
posted @ 2012-07-05 13:51  TigerWang1986  阅读(436)  评论(0)    收藏  举报