文件迁移 得到文件夹下所有文件名称

缘由:开发的程序中要求导入多个execl文件内容,导入成功后需要清空execl文件所在文件夹,并将导入的execl文件迁移到指定目录下。

    文件导入目录:D:DerDic

    文件迁移目录:D:BackCom

代码所执行的思路:

  1.判断迁移目录是否存在

  2.得到以日期作为迁移目录下子文件夹名称及全路径

  3.判断当天是否已经导入过文件,程序是否已经执行过,将已有文件用新文件替换

代码:

public void GetDie(sting path, string backpath)
    { 
if (Directory.Exists(backpath))//判断迁移文件目录是否存在 { string NewFileName = "CAP"+Senddate.ToString("yyMMdd");//以当前登录日为文件名称 string NewFilePath=backpath+@""+NewFileName;//文件夹路径 if (!Directory.Exists(NewFilePath))//判断是否已经存在当天的导入文件 { Directory.CreateDirectory(NewFilePath); } string[] execfile = Directory.GetFiles(path);//获取指定目录下所有文件名(包含路径) for (int r = 0; r < execfile.Length; r++) { string newfile = Path.GetFileName(execfile[r].ToString());//得到导入文件夹内文件名称及后缀名 string GolFilePath = NewFilePath + @"" + newfile;//迁移目录下的完整路径包含文件名称 if (File.Exists(GolFilePath)) { File.Delete(GolFilePath); } File.Move(execfile[r], GolFilePath); } } else { ScriptManager.RegisterClientScriptBlock(this, GetType(), "a", "alert('"+backpath+"目录不存在!');", true); } }

附msdn  Directory.Move 方法

http://msdn.microsoft.com/zh-cn/library/system.io.directory.move(v=VS.80).aspx

Directory.Move 方法

public static void Move (
 string sourceDirName,
 string destDirName
)

参数

sourceDirName

要移动的文件或目录的路径。

destDirName

指向 sourceDirName 的新位置的路径。

 备注:

举例来讲,如果您尝试将 c:mydir 移到 c:public,并且 c:public 已存在,则此方法引发 IOException。您必须将“c:\public\mydir”指定为 destDirName 参数(假设“c:\public”下不存在“mydir”),或者指定一个新的目录名,例如“c:\newdir”。

(sourceDirName 指目标文件的全路径。destDirName不仅仅只是新位置的路径,应是剪切文件后包含文件名的全路径地址)

原文地址:https://www.cnblogs.com/dreamskies/p/3143847.html