C# 把一个文件夹下所有文件复制到另一个文件夹下

public static void CopyDirectory(string srcPath, string destPath)
{
  try
    {    DirectoryInfo dir = new DirectoryInfo(srcPath);    FileSystemInfo[] fileinfo = dir.GetFileSystemInfos();  //获取目录下(不包含子目录)的文件和子目录
     foreach (FileSystemInfo i in fileinfo)
       {
            if (i is DirectoryInfo)     //判断是否文件夹
            {
                  if (!Directory.Exists(destPath+"\\"+i.Name))
                  {
                       Directory.CreateDirectory(destPath + "\\" + i.Name);   //目标目录下不存在此文件夹即创建子文件夹
                  }
                  CopyDir(i.FullName, destPath + "\\" + i.Name);    //递归调用复制子文件夹
            }
            else
            {
                  File.Copy(i.FullName, destPath + "\\" + i.Name,true);      //不是文件夹即复制文件,true表示可以覆盖同名文件
            }
       }
    }
    catch (Exception e)
    {
         throw;
    }}

调用CopyDirectory方法前可以先判断原路径与目标路径是否存在

if(Directory.Exists(srcPath)&&Directory.Exists(destPath))
{
    CopyDirectory(srcPath,destPath);}

原文地址:http://www.cnblogs.com/iamlucky/p/5996222.html

时间: 2024-10-21 04:44:37

C# 把一个文件夹下所有文件复制到另一个文件夹下的相关文章

将制定目录下的内容复制到另一个路径下

//Folder是需要复制的总目录,lastpath是目标目录 private void CopyFile(DirectoryInfo Folders, string lastpath) { //首先复制目录下的文件 foreach (FileInfo fileInfo in Folders.GetFiles()) { if (fileInfo.Exists) { //如果列表有记录的文件,就跳过 // if (filePaths.Contains(fileInfo.FullName)) con

(转) java 复制文件,不使用输出流复制,高效率,文件通道的方式复制文件

public static void fileChannelCopy(File s, File t) { FileInputStream fi = null; FileOutputStream fo = null; FileChannel in = null; FileChannel out = null; try { fi = new FileInputStream(s); fo = new FileOutputStream(t); in = fi.getChannel();// 得到对应的文

ubuntu下virtualenv的复制

将一个用户下的virtualenv复制到另一个用户下.直接复制无法使用,source后的python依旧是系统自带的python. 原始env名:/home/llx/work/nn/nnenv.bak 目标env名:/home/llx/work/nn/nnenv 1. 在新用户下建新的virtualenv virtualenv /home/llx/work/nn/nnenv 2. 将nnenv.bak/lib/python2.7/site-packages下所有文件替换到nnenv/lib/py

Linux 将文件夹下的所有文件复制到另一个文件里

如何将文件夹/home/work下的文件复制到/home/temp里面? 使用命令: cp -R /home/work/* /home/temp *表示所有文件 但是/home/work 下的隐藏文件都不会被拷贝 更好的复制的方法是用"."代替"*"就好了. cp -R /home/work/.  /home/temp 将一个文件夹复制到另一个文件夹下,例如将/home下的work文件夹复制到temp下面 命令为: cp -R /home/work  /home/t

获取一个想要的指定文件的集合,获取文件夹下(包含子目录的所有.java的文件对象,并存储到集合中)

import java.io.File; import java.io.FileFilter; import java.io.ObjectInputStream.GetField; import java.util.ArrayList; import java.util.List; public class huoquwenjian { /*获取一个想要的指定文件的集合,获取文件夹下(包含子目录的所有.java的文件对象,并存储到集合中) * 思路: * 1,既然包含子目录,就需要递归. * 2

Java File IO 练习题:把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件

package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.In

linux下文件夹的创建、复制、剪切、重命名、清空和删除命令 【转】

转载地址:http://blog.csdn.net/numbibi/article/details/8026841 在home目录下有wwwroot目录,wwwroot下有sinozzz目录,即/home/wwwroot/sinozzz 一.目录创建 在/home/wwwroot目录下新建一个sinozzz123的文件夹 mkdir /home/wwwroot/sinozzz123 二.目录复制 1.把/home/wwwroot/sinozzz里面的文件和文件夹等复制到home/wwwroot/

( 转)Ubuntu下创建、重命名、删除文件及文件夹,强制清空回收站方法

Ubuntu下创建.重命名.删除文件及文件夹,强制清空回收站方法 mkdir 目录名 ——创建一个目录 rmdir 空目录名 ——删除一个空目录 rm 文件名 文件名 ——删除一个文件或多个文件 rm -rf 非空目录名 ——删除一个非空目录下的一切 touch 文件名 ——创建一个空文件 重命名文件(夹) / 移动文件(夹)到指定文件夹echWeb-技术社区5].O"?8H.I执行格式: mv source destination 举例: mv file1 file2 表示将文件 file1,

xp下删除windows7,无法删除windows7文件夹,无法删除windows7文件,双系统卸载,取得文件权限

http://blog.csdn.net/lanmanck/article/details/5722050 -------------------------------------------------- 找了比较久,这个强人写的,很佩服,贴出来共享: http://hi.baidu.com/wjg750926/blog/item/4046a84ab171d92b08f7ef27.html 一些网友在Xp 下安装了Windows 7(适用于Vista/WS2008) 双系统,试用一段时间之后