zoukankan      html  css  js  c++  java
  • 判断远程文件是否存在

    目标效果:

    项目中显示视频列表时,如果缩略图不存在,则加载一个默认图片。而不是一个很丑的小红叉。其中缩略图图片是存在另外一个独立的视频服务器上的,所以我们不能用File.Exist()方法直接判断,需要另辟蹊径。

    实现步骤:
    前台采用   asp:Repeater 控件,添加事件onitemdatabound="rptTraining_ItemDataBound"。

       protected void rptTraining_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            Image img 
    = (Image)e.Item.FindControl("img");
            
            
    if (!RemoteFileExists (img.ImageUrl ))
            {
                img.ImageUrl 
    = "images/memo.jpg";//如果图片不存在,则加载默认图片
            }
        }

    加载每一条记录的时候都检测一下远程服务器上是否存在图片,RemoteFileExists方法如下。
       

    /// <summary>
        
    ///  判断远程文件是否存在
        
    /// </summary>
        
    /// <param name="fileUrl">文件URL</param>
        
    /// <returns>存在-true,不存在-false</returns>
        private bool RemoteFileExists(string fileUrl)
        {
            
    bool result = false;//下载结果

            WebResponse response 
    = null;
            
    try
            {
                WebRequest req 
    = WebRequest.Create(fileUrl);

                response 
    = req.GetResponse();

                result 
    = response == null ? false : true;

            }
            
    catch (Exception ex)
            {
                result 
    = false;
            }
            
    finally
            {
                
    if (response != null)
                {
                    response.Close();
                }
            }

            
    return result;
        }

    至此,实现了想要的效果。

    知识虽小,重在点滴。积跬步方以至千里。

  • 相关阅读:
    spring子模块----->Spring Security------->相关教程(参考资料)
    Maven--->学习心得--->maven 概述
    Spring和Spring MVC 、Spring Security的关系
    leapMotion简介
    软件工程需求分析
    大型web网站-----系统架构
    Maven的安装与配置
    A Java Exception occured 解决
    mysql-5.7.20安装和配置
    线段树 poj 3667
  • 原文地址:https://www.cnblogs.com/janes/p/1905625.html
Copyright © 2011-2022 走看看