我要把一个文件夹拷贝到另一个目录文件夹下例如:D:\aa拷贝到D:\bb\下,即得到的D:\bb\aa !!!!

时间:2022-07-29 21:38:25
我要把一个文件夹拷贝到另一个目录文件夹下例如:D:\aa拷贝到D:\bb\下,即得到的D:\bb\aa          !!!!
各位大哥帮帮忙呀!!
急用呀。。。

6 个解决方案

#1



引自:http://www.mzwu.com/article.asp?id=1547


using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;

/// <summary>
/// MyDirectory 的摘要说明
/// </summary>
public class MyDirectory
{
    /// <summary>
    /// 文件夹复制
    /// </summary>
    /// <param name="sourceDirName">原始路径</param>
    /// <param name="destDirName">目标路径</param>
    /// <returns></returns>
    public static void Copy(string sourceDirName, string destDirName)
    {
        if (sourceDirName.Substring(sourceDirName.Length - 1) != "\\")
        {
            sourceDirName = sourceDirName + "\\";
        }
        if (destDirName.Substring(destDirName.Length - 1) != "\\")
        {
            destDirName = destDirName + "\\";
        }

        if (Directory.Exists(sourceDirName))
        {
            if(!Directory.Exists(destDirName))
            {
                Directory.CreateDirectory(destDirName);
            }
            foreach (string item in Directory.GetFiles(sourceDirName))
            {
                File.Copy(item,destDirName+Path.GetFileName(item),true);
            }
            foreach (string item in Directory.GetDirectories(sourceDirName))
            {
                Copy(item, destDirName + item.Substring(item.LastIndexOf("\\")+ 1));
            }
        }
    }
}

#2


sourceFileName:源文件  
  DestFileName﹕目标文件  
  overwrite﹕是否覆盖  
  System.IO.File.Copy(sourceFileName,DestFileName,overwrite)    
  目标文件必须是已经存在的文件  
    
  如果文件不存在就用System.IO.FileInfo.CopyTo(DestFileName,overwrite)了  

#3


谢谢了。。

#4


我要拷贝的直接是文件夹?这样可以吗?

#5


1楼的应该就可以了!

#6


刚才没看清楚了,拷贝文件夹的话还是1楼的,我给的是拷贝文件的!不好意思

#1



引自:http://www.mzwu.com/article.asp?id=1547


using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;

/// <summary>
/// MyDirectory 的摘要说明
/// </summary>
public class MyDirectory
{
    /// <summary>
    /// 文件夹复制
    /// </summary>
    /// <param name="sourceDirName">原始路径</param>
    /// <param name="destDirName">目标路径</param>
    /// <returns></returns>
    public static void Copy(string sourceDirName, string destDirName)
    {
        if (sourceDirName.Substring(sourceDirName.Length - 1) != "\\")
        {
            sourceDirName = sourceDirName + "\\";
        }
        if (destDirName.Substring(destDirName.Length - 1) != "\\")
        {
            destDirName = destDirName + "\\";
        }

        if (Directory.Exists(sourceDirName))
        {
            if(!Directory.Exists(destDirName))
            {
                Directory.CreateDirectory(destDirName);
            }
            foreach (string item in Directory.GetFiles(sourceDirName))
            {
                File.Copy(item,destDirName+Path.GetFileName(item),true);
            }
            foreach (string item in Directory.GetDirectories(sourceDirName))
            {
                Copy(item, destDirName + item.Substring(item.LastIndexOf("\\")+ 1));
            }
        }
    }
}

#2


sourceFileName:源文件  
  DestFileName﹕目标文件  
  overwrite﹕是否覆盖  
  System.IO.File.Copy(sourceFileName,DestFileName,overwrite)    
  目标文件必须是已经存在的文件  
    
  如果文件不存在就用System.IO.FileInfo.CopyTo(DestFileName,overwrite)了  

#3


谢谢了。。

#4


我要拷贝的直接是文件夹?这样可以吗?

#5


1楼的应该就可以了!

#6


刚才没看清楚了,拷贝文件夹的话还是1楼的,我给的是拷贝文件的!不好意思