首页 > 代码库 > 文件夹下迭代查询文件

文件夹下迭代查询文件

客户需求】:由于客户需要查询的图片太多(每天好多张),通过文章登记或者附件上传太麻烦,想要通过FTP上传到服务器中,然后在前台查询,将图片显示出来。但图片太多,每天上传,为了管理方便,每天新建一个文件夹,直接将文件夹中的图片上传,而该文件夹下又有若干层和若干个子文件夹。

分析】:文件夹不确定,文件夹名字也不确定,甚至图片的格式也不确定,而用户输入一个图片编号(图片名字,如:_20140926135.JPG 编号:20140926135),则需要将所在文件夹中的图片编号和图片显示出来。那么则需要将指点文件夹下的图片文件拿出来一一比对,找到编号相同的图片文件,如果没有找到,则显示“没有该编号的记录”。

解决方案】:在方法中递归地去文件夹中搜索文件,直到文件夹下没有文件了为止。如图所示:

返回文件的路径。

部分代码:

    /// <summary>    /// 查找指定文件夹下指定后缀名的文件    /// </summary>    /// <param name="directory">文件夹</param>    /// <param name="pattern">后缀名</param>    /// <returns>文件路径</returns>    public List<string> GetFiles(DirectoryInfo directory, string pattern)    {        if (directory.Exists || pattern.Trim() != string.Empty)        {            try            {                foreach (FileInfo info in directory.GetFiles(pattern))                {                    result.Add(info.FullName.ToString());                }            }            catch { }            foreach (DirectoryInfo info in directory.GetDirectories())            {                GetFiles(info, pattern);            }        }        return result;    }

效果如图所示:

DEMO下载,演示:
http://download.csdn.net/detail/u011397689/8088203

 

文件夹下迭代查询文件