文件夾下迭代查詢文件


客戶需求】:由於客戶需要查詢的圖片太多(每天好多張),通過文章登記或者附件上傳太麻煩,想要通過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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM