欢迎光临
我们一直在努力

复制文件夹所有内容和删除整个文件夹的2个函数-.NET教程,Asp.Net开发

建站超值云服务器,限时71元/月

  // ======================================================
  // 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面
  // 如果目标文件夹为只读属性就会报错。
  // april 18april2005 in stu
  // ======================================================
  public static void copydir(string srcpath,string aimpath)
  {
   try
   {
    // 检查目标目录是否以目录分割字符结束如果不是则添加之
    if(aimpath[aimpath.length-1] != path.directoryseparatorchar)
     aimpath += path.directoryseparatorchar;
    // 判断目标目录是否存在如果不存在则新建之
    if(!directory.exists(aimpath)) directory.createdirectory(aimpath);
    // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
    // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法
    // string[] filelist = directory.getfiles(srcpath);
    string[] filelist = directory.getfilesystementries(srcpath);
    // 遍历所有的文件和目录
    foreach(string file in filelist)
    {
     // 先当作目录处理如果存在这个目录就递归copy该目录下面的文件
     if(directory.exists(file))
      copydir(file,aimpath+path.getfilename(file));
      // 否则直接copy文件
     else
      file.copy(file,aimpath+path.getfilename(file),true);
    }
   }
   catch (exception e)
   {
    messagebox.show (e.tostring());
   }
  }

  // ======================================================
  // 实现一个静态方法将指定文件夹下面的所有内容detele
  // 测试的时候要小心操作,删除之后无法恢复。
  // april 18april2005 in stu
  // ======================================================
  public static void deletedir(string aimpath)
  {
   try
   {
    // 检查目标目录是否以目录分割字符结束如果不是则添加之
    if(aimpath[aimpath.length-1] != path.directoryseparatorchar)
     aimpath += path.directoryseparatorchar;
    // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
    // 如果你指向delete目标文件下面的文件而不包含目录请使用下面的方法
    // string[] filelist = directory.getfiles(aimpath);
    string[] filelist = directory.getfilesystementries(aimpath);
    // 遍历所有的文件和目录
    foreach(string file in filelist)
    {
     // 先当作目录处理如果存在这个目录就递归delete该目录下面的文件
     if(directory.exists(file))
     {
      deletedir(aimpath+path.getfilename(file));
     }
      // 否则直接delete文件
     else
     {
      file.delete (aimpath+path.getfilename(file));
     }
    }
    //删除文件夹
    system.io .directory .delete (aimpath,true);
   }
   catch (exception e)
   {
    messagebox.show (e.tostring());
   }
  }

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 复制文件夹所有内容和删除整个文件夹的2个函数-.NET教程,Asp.Net开发
分享到: 更多 (0)