子晴的编程日记

记录我的编程日记

导航

c#复制文件夹和文件

/// <summary>
/// 拷贝文件夹
/// </summary>
/// <param name="srcdir"></param>
/// <param name="desdir"></param>
public static void CopyDirectory(string srcdir, string desdir)
{
string folderName = srcdir.Substring(srcdir.LastIndexOf("\\") + 1);

string desfolderdir = desdir + "\\" + folderName;

if (desdir.LastIndexOf("\\") == (desdir.Length - 1))
{
desfolderdir = desdir + folderName;
}
string[] filenames = Directory.GetFileSystemEntries(srcdir);

foreach (string file in filenames)// 遍历所有的文件和目录
{
if (Directory.Exists(file))// 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
{
string currentdir = desfolderdir + "\\" + file.Substring(file.LastIndexOf("\\") + 1);
if (!Directory.Exists(currentdir))
{
Directory.CreateDirectory(currentdir);
}

CopyDirectory(file, desfolderdir);
}

else // 否则直接copy文件
{
string srcfileName = file.Substring(file.LastIndexOf("\\") + 1);

srcfileName = desfolderdir + "\\" + srcfileName;

if (!Directory.Exists(desfolderdir))
{
Directory.CreateDirectory(desfolderdir);
}

File.Copy(file, srcfileName, true);
}
}//foreach
}//function end

posted on 2019-09-17 14:09  子晴的编程日记  阅读(612)  评论(0编辑  收藏  举报