精华内容
下载资源
问答
  • c#拷贝文件夹
    千次阅读
    2015-12-08 11:06:57

    C# 拷贝文件夹(包含里面的所有文件)

    思路:分2步:

    1. 如果destDir不存在,创建它。

    2. 遍历sourceDir里的所有文件,把所有文件都复制到destDir


    /// <summary>
            /// Copy one folder to a new folder. if destDir is not exists, then create it.
            /// </summary>
            /// <param name="sourceDir"></param>
            /// <param name="destDir"></param>
            private static void CopyFolder(string sourceDir, string destDir)
            {
                if (!Directory.Exists(destDir))
                {
                    Directory.CreateDirectory(destDir);
                }
    
                try
                {
                    string[] fileList = Directory.GetFiles(sourceDir, "*");
                    foreach (string f in fileList)
                    {
                        // Remove path from the file name.
                        string fName = f.Substring(sourceDir.Length + 1);
    
                        // Use the Path.Combine method to safely append the file name to the path.
                        // Will overwrite if the destination file already exists.
                        File.Copy(Path.Combine(sourceDir, fName), Path.Combine(destDir, fName), true);
                    }
                }
    
                catch (DirectoryNotFoundException dirNotFound)
                {
                    throw new DirectoryNotFoundException(dirNotFound.Message);
                }
            }


    更多相关内容
  • /// 拷贝文件夹及其文件下的所有文件 /// </summary> /// <param name="SourcePath">要Copy的文件夹</param> /// <param name="DestinationPath">要复制到哪个地方</param> /// ...
     /// <summary>
            /// 拷贝文件夹及其文件下的所有文件
            /// </summary>
            /// <param name="SourcePath">要Copy的文件夹</param>
            /// <param name="DestinationPath">要复制到哪个地方</param>
            /// <param name="overwriteexisting">是否覆盖</param>
            /// <returns>范围false标识失败</returns>
            private static  bool CopyDirectory(string SourcePath, string DestinationPath, bool overwriteexisting)
            {
                bool ret = false;
                if (!Directory.Exists(SourcePath))
                {
                    return ret;
                }
                char[] splits = new char[2] { '\\', '/' };
                try
                {
                    string[] splitArr = SourcePath.Split(splits, StringSplitOptions.RemoveEmptyEntries);
                    string fistDirectoryName = string.Empty;
                    if (splitArr[splitArr.Length - 1].Length == 0)
                    {
                        fistDirectoryName = splitArr[splitArr.Length - 2];
                    }
                    else
                    {
                        fistDirectoryName = splitArr[splitArr.Length - 1];
                    }
                    string fistDestinationPath = Path.Combine(DestinationPath, fistDirectoryName);
    
                    if (!Directory.Exists(fistDestinationPath))
                    {
                        Directory.CreateDirectory(fistDestinationPath);
                    }
    
                    foreach (string fls in Directory.GetFiles(SourcePath))
                    {
                        File.Copy(fls, Path.Combine(fistDestinationPath, Path.GetFileName(fls)), overwriteexisting);
                    }
                    foreach (string drs in Directory.GetDirectories(SourcePath))
                    {
                        if (!CopyDirectory(drs, fistDestinationPath, overwriteexisting))
                        {
                            ret = false;
                            break;
                        }
                    }
                    ret = true;
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.StackTrace);
                    ret = false;
                }
                return ret;
            }
    
    展开全文
  • 主要介绍了C#拷贝整个文件夹以及子目录和其中文件,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
  • C#拷贝文件夹进度条

    2012-09-11 20:50:01
    网上好多负责文件夹的进度条写的都有问题,在此基础上,自己修改了一下,进度条可以完美显示出来,另外还加了一个label动态显示拷贝的文件名,用的多线程,里面一些细节...另外拷贝文件夹是是递归到里面的文件夹的。
  • using System; using System.Collections.Generic; using System.Text; namespace ClientPrintServer.Tools { public class CopyFilesKit { /// <summary>... /// 拷贝文件夹到指定文...
    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace ClientPrintServer.Tools
    {
        public class CopyFilesKit
        {
            /// <summary>
            /// 拷贝文件夹到指定文件夹并更改文件夹名称
            /// </summary>
            /// <param name="srcPath">源文件夹</param>
            /// <param name="aimPath">目标文件夹+文件夹名称</param>
            public static void CopyDir(string srcPath, string aimPath)
            {
                try
                {
                    // 检查目标目录是否以目录分割字符结束如果不是则添加
                    if (aimPath[aimPath.Length - 1] != System.IO.Path.DirectorySeparatorChar)
                    {
                        aimPath += System.IO.Path.DirectorySeparatorChar;
                    }
                    // 判断目标目录是否存在如果不存在则新建
                    if (!System.IO.Directory.Exists(aimPath))
                    {
                        System.IO.Directory.CreateDirectory(aimPath);
                    }
                    // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
                    // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法
                    // string[] fileList = Directory.GetFiles(srcPath);
                    string[] fileList = System.IO.Directory.GetFileSystemEntries(srcPath);
                    // 遍历所有的文件和目录
                    foreach (string file in fileList)
                    {
                        // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
                        if (System.IO.Directory.Exists(file))
                        {
                            CopyDir(file, aimPath + System.IO.Path.GetFileName(file));
                        }
                        // 否则直接Copy文件
                        else
                        {
                            System.IO.File.Copy(file, aimPath + System.IO.Path.GetFileName(file), true);
                        }
                    }
                }
                catch (Exception e)
                {
                    throw;
                }
            }
        }
    }

     

    转载于:https://www.cnblogs.com/swjian/p/10957508.html

    展开全文
  • C# 拷贝文件夹到指定目录

    千次阅读 2016-01-22 20:36:03
    递归拷贝整个文件夹到指定目录 递归拷贝文件夹中的内容到指定目录

    拷贝文件夹到指定目录

    递归拷贝整个文件夹到指定目录,注意该函数可能抛异常

    public static void CopyDirIntoDestDirectory(string srcdir, string dstdir, bool overwrite)
    {
        string todir = Path.Combine(dstdir,
                                    Path.GetFileName(srcdir)
                                    );
    
        if (!Directory.Exists(todir))
            Directory.CreateDirectory(todir);
    
        foreach (var s in Directory.GetFiles(srcdir))
            File.Copy(s, Path.Combine(todir, Path.GetFileName(s)), overwrite);
    
        foreach (var s in Directory.GetDirectories(srcdir))
            CopyDirIntoDestDirectory(s, todir, overwrite);
    }

    拷贝文件夹中的内容到指定目录

    递归拷贝文件夹中的内容到指定目录,注意该函数可能抛异常

    public static void CopyDirContentIntoDestDirectory(string srcdir, string dstdir, bool overwrite)
    {
        if (!Directory.Exists(dstdir))
            Directory.CreateDirectory(dstdir);
    
        foreach (var s in Directory.GetFiles(srcdir))
            File.Copy(s, Path.Combine(dstdir, Path.GetFileName(s)), overwrite);
    
        foreach (var s in Directory.GetDirectories(srcdir))
            CopyDirContentIntoDestDirectory(s, Path.Combine(dstdir, Path.GetFileName(s)), overwrite);
    }
    展开全文
  • using System.IO; public static void CopyFolder2(string sourceFolder, string destFolder) { string folderName = Path.GetFileName(sourceFolder); string destfolderdir = Path.Combine(destFolder, ...
  • C#拷贝文件夹及文件

    2014-09-07 13:14:10
    private void CopyDir(string srcPath, string aimPath) { try { // 检查目标目录是否以目录分割字符结束如果不是则添加之 if (aimPath[aimPath.Length - 1] != System.IO.Path....System.
  • C# 拷贝文件到另一个文件夹

    千次阅读 2021-04-15 16:38:39
    /// 拷贝文件到另一个文件夹下 /// </summary> /// <param name="sourceName">源文件路径</param> /// <param name="folderPath">目标路径(目标文件夹)</param> public void CopyTo...
  • c# copy文件夹

    2021-07-09 10:48:56
    private void CopyDirectory(string srcdir, string desdir) { if (srcdir.LastIndexOf("\") == (srcdir.Length - 1)) { srcdir = srcdir.Substring(0, srcdir.Length - 1); } string folderName = srcdir.Substring...
  • C# 文件夹拷贝

    2017-06-19 10:38:35
    C# 文件夹拷贝,看网上相同功能很多,但是使用起来 没有达到预期: public static void CopyDirectory(string srcDir, string tgtDir) { DirectoryInfo source = new DirectoryInfo(srcDir); DirectoryInfo ...
  • namespace WebMvcNetCore.TuShi.FenGong.Model.Tool { /// /// 文件操作帮助类 /// public static class FileHelpter { /// /// 复制文件夹下的所有文件、目录到指定的文件夹 /// /// 源文件夹地址 /// 指定的...
  • 本文实例讲述了C#拷贝文件简单实现方法。分享给大家供大家参考。具体分析如下: C#中拷贝文件可以先通过FileInfo指定文件,然后通过FileInfo的CopyTo方法拷贝文件到指定的位置 FileInfo fi = new FileInfo(@"C:\...
  • /// 复制文件夹下所有文件 /// </summary> /// <param name="sourceFolder">原文件路径</param> /// <param name="destFolder">目标文件路径</param> public vo...
  • C# 复制文件及文件夹

    2022-07-29 12:39:28
    代码】C#复制文件及文件夹
  • c#拷贝文件夹示例

    2021-01-01 00:22:40
    代码如下:using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Text.RegularExpressions;using System.Threading.Tasks; namespace FileUtility{ ...
  • 可利用的进度条方案。里面有详细的代码说明。
  • /// 拷贝目录下所有文件 /// </summary> /// <param name="srcFolder"></param> /// <param name="desFolder"></param> private static void CopyFolder(string srcFolder, ...
  • C# 根据SN批量拷贝文件夹/文件 1:批量输入SN号 自动统计SN数量 2:自定义 源文件夹和目标文件夹 3:记录复制成功数量
  • C#将文件/文件夹复制到指定文件夹

    千次阅读 2020-07-16 15:36:19
    可以使用下面方法复制初始文件到指定文件夹。 方法一:只将源文件夹根目录的文件复制到目标文件夹。 if (!Directory.Exists(destDir))//若目标文件夹不存在 { string newPath; FileInfo fileInfo; Directory....
  • 实现: 将 F:/test2下的所有数据 拷贝到 F:/test1内去 ...拷贝前判断是否是文件夹: 是文件夹:创建文件夹,并递归拷贝函数  是文件:直接拷贝 public static void CopyTest() { string sourceFo...
  • C# 删除清空文件夹及拷贝文件夹下面的内容的方法 直接调用就行,只要参数传的对,一定可以成功 拷贝文件及文件夹 /// <summary> /// 拷贝文件及文件夹 /// </summary> /// <param name="srcPath...
  • 本文实例讲述了C#实现复制文件夹中文件到另一个文件夹的方法。分享给大家供大家参考。具体如下: private void CopyDir(string srcPath, string aimPath) {  try  {  // 检查目标目录是否以目录分割字符结束如果...
  • 主要为大家详细介绍了C#实现文件夹的复制和删除功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • public static void CopyEntireDir(string sourcePath, string destPath) { //Now Create all of the directories foreach (string dirPath in Directory.GetDirectories(sourcePath, "*", ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,794
精华内容 6,317
关键字:

c#拷贝文件夹

c# 订阅