网站链接: 我爱捣鼓
当前位置: 首页 > web开发  > Asp.net/C#

C#怎么获取文件夹里所有的图片文件?

2021/3/4 21:48:01

在实际的程序开发中,我们经常需要获取某个文件夹下的所有图片,用到了C#的DirectoryInfo、GetFiles等文件操作方法,具体实现如下://自定义一个结构public struct sFileInfo{ public string FileName; public DateTime FileCreateTime;}protected void Page_Load(…

在实际的程序开发中,我们经常需要获取某个文件夹下的所有图片,用到了C#的DirectoryInfo、GetFiles等文件操作方法,具体实现如下:

//自定义一个结构
public struct sFileInfo
{
    public string FileName;
    public DateTime FileCreateTime;
}
protected void Page_Load(object sender, EventArgs e)
    DirectoryInfo d = new DirectoryInfo(Server.MapPath("~/"));
    //根椐指定文件夹下的jpg文件数目,获取数组的长度 n
    int n = 0;
    foreach (FileInfo _f in d.GetFiles())
    {
        if (_f.Name.Substring(_f.Name.Length - 3, 3) == "jpg") 
        //注意:这里只是简单的判断名称的后三位,也就是说文件的扩展名是区分大小写
        {
            n++;
        } 
    }
    //定义数组 并对数组进行赋值
    sFileInfo[] ArrFiles = new sFileInfo[n];
    int i = 0;
    foreach (FileInfo _f in d.GetFiles())
    {
        if (_f.Name.Substring(_f.Name.Length - 3, 3) == "jpg")
        {
            ArrFiles[i].FileName = _f.Name;
            ArrFiles[i].FileCreateTime = _f.CreationTime;
            i++;
        }
    }
    //对数组根椐文件创建时间进行冒泡排序
    sFileInfo FileInfoTemp;
    for (int k = 0; k < n; k++)
    {
        for (int j = k + 1; j < n; j++)
        {
            if (DateTime.Compare(ArrFiles[k].FileCreateTime, ArrFiles[j].FileCreateTime) < 0)
            {
                FileInfoTemp = ArrFiles[k];
                ArrFiles[k] = ArrFiles[j];
                ArrFiles[j] = FileInfoTemp;
            }
        }
    }
    //显示文件
    for (int j = 0; j <n ; j++
    {
        Response.Write("<br>文件名称:" ArrFiles[j].FileName +" 创建时间:"+ArrFiles[j].FileCreateTime);
    }
}


相关资讯

  • c#实现日期时间与unix时间戳互相转换

    为什么使用时间戳?关于Unix时间戳,大概是这个意思,从1970年0时0分0秒开始到现在的秒数.使用它来获得的是一个INT值,储存在数据库里只要使用INT格式就可以了,方便数据库进行排序,搜索,而且比datetime格式更节省数据库空间。 /// <summary> /// Uni…

    2021/3/4 21:40:22