您的位置:首页 > 编程语言 > ASP

ASP.NET查找指定文件夹下的末级子目录

2015-10-14 15:44 441 查看
<span style="white-space:pre">	</span>/// <summary>

/// 查找指定目录下的所有末级子目录

/// </summary>

/// <param name="dir">要查找的目录</param>

/// <param name="list">查找结果列表</param>

/// <param name="system">是否包含系统目录</param>

/// <param name="hidden">是否包含隐藏目录</param>

static void GetEndDirectories(DirectoryInfo dir, List<DirectoryInfo> list, bool system = false, bool hidden = false)

{

DirectoryInfo[] sub = dir.GetDirectories();

if (sub.Length == 0)

{// 没有子目录了

list.Add(dir);

return;

}

foreach (DirectoryInfo subDir in sub)

{

// 跳过系统目录

if (!system && (subDir.Attributes & FileAttributes.System) == FileAttributes.System)

continue;

// 跳过隐藏目录

if (!hidden && (subDir.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)

continue;

GetEndDirectories(subDir, list);

}

}
<span style="white-space:pre">	</span>//调用方法:            List<DirectoryInfo> list = new List<DirectoryInfo>();            DirectoryInfo dir = new DirectoryInfo(fileUrl);            GetEndDirectories(dir, list);            // 循环所有目录            foreach (DirectoryInfo di in list)            {                string[] FSFiles = Directory.GetFiles(di.FullName);                foreach (string file in FSFiles)                {                    File.Copy(file, copyDirectory + file.Substring(file.LastIndexOf('\\')), true);                }            }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  asp.net