C#学习教程:将文件从一个位置复制到另一个位置以下代码有效,但如果有子目录,则不会创建父目录(10_new)。我正在尝试将所有内容(包括子目录)从“c:\sourceLoc\10”移动到“c:\destLoc\10_new”文件夹。如果“10_new”不存在,那么我应该创建这个文件夹。请帮忙。字符串sourceLoc="c:\sourceLoc\10";字符串destLoc="c:\destLoc\10_new";foreach(stringdirPathinDirectory.GetDirectories(sourceLoc,"*",SearchOption.AllDirectories)){Directory.CreateDirectory(dirPath.Replace(sourceLoc,destLoc));if(Directory.Exists(sourceLoc)){//复制所有文件destLoc));从查看代码来看,您永远不会检查父文件夹是否存在。您首先跳转以获取所有子文件夹。如果(!Directory.Exists(@"C:mydir"))Directory.CreateDirectory(@"C:mydir");下面是如何将目录中的所有文件复制到另一个目录这个取自http://msdn.microsoft.com/en-us/library/cc148994.aspxstringsourcePath="c:\sourceLoc\10";字符串targetPath="c:\destLoc\10_new";字符串文件名=string.Empty;字符串destFile=string.Empty;//将一个目录中的所有文件复制到另一个目录。//获取源文件夹中的文件。(要递归遍历//当前目录下的所有子文件夹,请参阅//“如何:遍历目录树”。)//注意:在此代码示例中//之前已执行目标路径检查。如果(System.IO.Directory.Exists(sourcePath)){string[]files=System.IO.Directory.GetFiles(sourcePath);//复制文件并覆盖目标文件(如果它们已经存在)。foreach(stringsinfiles){//使用静态Path方法只从路径中提取文件名。文件名=System.IO.Path.GetFileName(s);destFile=系统.IO.Path.Combine(targetPath,fileName);System.IO.File.Copy(s,destFile,true);}}else{Console.WriteLine("源路径不存在!");}执行File.Copy之前,如果不创建文件夹,请检查以确保该文件夹存在。此函数将检查路径是否存在,如果不存在,则创建它。如果它无法创建它,无论出于何种原因,它将返回false。否则,是的。私有函数checkDir(ByValpathAsString)AsBooleanDimdirAsNewDirectoryInfo(path)DimexistAsBoolean=TrueIfNotdir.ExistsThenTrydir.Create()CatchexAsExceptionexist=FalseEndTryEndIfReturnexistEndFunction请记住,所有.Net语言都会编译为CLR(公共语言运行时),因此无论您使用的是VB.Net还是C#都没有关系。在两者之间进行转换的一个好方法是:http://converter.telerik.com/在Windows7中无法使用C#复制或移动文件。它将创建一个零字节文件。以上就是C#学习教程的全部内容:将文件从一个位置复制到另一个位置进行共享。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:
