在涉及到文件夹操作的过程中,有时候需要将文件夹下的所有内容复制拷贝到另一个文件夹,在c#的开发中有时候会遇到这个功能需求将指定文件夹下所有的内容复制到另一个文件夹,这个过程需要遍历所有的文件和目录。此过程中还涉及到使用directory.createdirectory方法创建文件夹,file.copy方法来复制文件等操作。具体的方法实现如下所示:
/// <summary>
/// 指定文件夹下面的所有内容copy到目标文件夹下面
/// </summary>
/// <param name="srcpath">原始路径</param>
/// <param name="aimpath">目标文件夹</param>
public static void copydir(string srcpath, string aimpath)
{
try
{
// 检查目标目录是否以目录分割字符结束如果不是则添加之
if (aimpath[aimpath.length - 1] != path.directoryseparatorchar)
aimpath += path.directoryseparatorchar;
// 判断目标目录是否存在如果不存在则新建之
if (!directory.exists(aimpath))
directory.createdirectory(aimpath);
// 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
//如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法
//string[] filelist = directory.getfiles(srcpath);
string[] filelist = directory.getfilesystementries(srcpath);
//遍历所有的文件和目录
foreach (string file in filelist)
{
//先当作目录处理如果存在这个目录就递归copy该目录下面的文件
if (directory.exists(file))
copydir(file, aimpath + path.getfilename(file));
//否则直接copy文件
else
file.copy(file, aimpath + path.getfilename(file), true);
}
}
catch (exception ee)
{
throw new exception(ee.tostring());
}
}
备注:更多干货关注博主站点。原文转载自c#指定文件夹下面的所有内容复制到目标文件夹下面_it技术小趣屋。
如对本文有疑问, 点击进行留言回复!!
MFC 第三方库 利用opencv的MAT类完成图片导入以及对图片进行翻转保存的操作
OpenGL入门 -- OpenGL的投影方式、固定着色器分类以及图元连接方式
【FFmpeg】警告:[hls] pkt-」duration = 0, maybe the hls segment duration will not precise
使用FFmpeg进行360全景视频格式转换:filter v360
网友评论