示例:假设需要生产环境中只给你一个路径你需要将路径中所有的文件及文件夹copy至测试环境电脑
1.递归方法
public void ListDirectories(string dir)
{
try
{
foreach (var item in Directory.GetFiles(dir))
{
Selectapp(item);//此处可以进行copy及创建文件夹路径
}
// 获取当前目录下的所有子目录
string[] subDirectories = Directory.GetDirectories(dir);
// 输出当前目录 创建文件夹路径
Writelog(dir);
// 遍历子目录并递归调用 ListDirectories 方法
foreach (string subDir in subDirectories)
{
foreach (var item in Directory.GetFiles(subDir))
{
Selectapp(item);//此处可以进行copy
}
ListDirectories(subDir);
}
}
catch (UnauthorizedAccessException e)
{
// 处理权限不足的情况
Writelog($"权限不足访问目录: {dir}");
}
catch (DirectoryNotFoundException e)
{
// 处理目录不存在的情况
Writelog($"目录不存在: {dir}") ;
}
catch (Exception e)
{
// 处理其他异常
Writelog($"发生异常: {e.Message}");
}
}