分析网页时,经常有http://xxx.xxx.xxx/xxx.asp?qur=xxx&type=xxxx一类的url,
我怎么能知道这到底是网页文件?还是一个其他文件?怎样确定文件的类型?

解决方案 »

  1.   

    参数可以不理,只需要判断?前面的文件,一般带参数的都是动态网页,除非用不到还非要加进去的
    不过,如果这个网页做了转向,那是另外一回事,不是分析URL可以知道的
      

  2.   

    经常有论坛有此类地址,指向的文件有图片、文件等。
    我用下面的办法下载网页:
     request = (HttpWebRequest)WebRequest.Create(mUrl);
                    response = (HttpWebResponse)request.GetResponse();
                    Stream receiveStream = response.GetResponseStream();
    有什么办法来判断是否是网页?不是网页的我不想下载。
    再有,IE是怎样来确定是否网页的?
      

  3.   

    使用System.Uri类来处理ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.NETDEVFX.v20.chs/cpref2/html/T_System_Uri.htm
      

  4.   

    首先感谢
    zhzuo(秋枫) dxef(丁丁) 
    不过,URI分析不出来吧?
      

  5.   

    request = (HttpWebRequest)WebRequest.Create(mUrl);
    response = (HttpWebResponse)request.GetResponse();
    if(response.ContentType!=null && response.ContentType.length > 0)
    {
       判断是否是jpg
       if("image/jpeg" == response.ContentType 
           || "image/pjpeg" == response.ContentType
         ) ......;}MIME 的类型看自己计算机,注册表位置
    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MIME\Database\Content Type这种判断一般不会错,除非是url 止向的是一个,不正规的 web 服务器
    不过这么做是比较消耗性能的,成批处理还是不要了
      

  6.   

    感谢 FlashElf(銘龘鶽)
    这的确是通用的做法。
    有没有办法在GetResponse()前判断类型?
      

  7.   

    request = (HttpWebRequest)WebRequest.Create(mUrl);
    response = (HttpWebResponse)request.GetResponse();
      

  8.   

    不得到 mime 类型怎么判断?response = request.GetResponse() 这行你去掉试验一下
    我好不用这个类了