首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Java 剔除文件和目录代码

2012-09-19 
Java 删除文件和目录代码package file.ioimport java.io.File/**** @author gaolei_xj* 2011-11-30* 删

Java 删除文件和目录代码

package file.io;     import java.io.File;     /**   *    * @author gaolei_xj   * 2011-11-30   * 删除文件或目录   */  public class DeleteFileUtil {       /**       * 删除文件,可以是单个文件或文件夹       * @param   fileName    待删除的文件名       * @return 文件删除成功返回true,否则返回false       */      public static boolean delete(String fileName){           File file = new File(fileName);           if(!file.exists()){               System.out.println("删除文件失败:"+fileName+"文件不存在");               return false;           }else{               if(file.isFile()){                                      return deleteFile(fileName);               }else{                   return deleteDirectory(fileName);               }           }       }              /**       * 删除单个文件       * @param   fileName    被删除文件的文件名       * @return 单个文件删除成功返回true,否则返回false       */      public static boolean deleteFile(String fileName){           File file = new File(fileName);           if(file.isFile() && file.exists()){               file.delete();               System.out.println("删除单个文件"+fileName+"成功!");               return true;           }else{               System.out.println("删除单个文件"+fileName+"失败!");               return false;           }       }              /**       * 删除目录(文件夹)以及目录下的文件       * @param   dir 被删除目录的文件路径       * @return  目录删除成功返回true,否则返回false       */      public static boolean deleteDirectory(String dir){           //如果dir不以文件分隔符结尾,自动添加文件分隔符           if(!dir.endsWith(File.separator)){               dir = dir+File.separator;           }           File dirFile = new File(dir);           //如果dir对应的文件不存在,或者不是一个目录,则退出           if(!dirFile.exists() || !dirFile.isDirectory()){               System.out.println("删除目录失败"+dir+"目录不存在!");               return false;           }           boolean flag = true;           //删除文件夹下的所有文件(包括子目录)           File[] files = dirFile.listFiles();           for(int i=0;i<files.length;i++){               //删除子文件               if(files[i].isFile()){                   flag = deleteFile(files[i].getAbsolutePath());                   if(!flag){                       break;                   }               }               //删除子目录               else{                   flag = deleteDirectory(files[i].getAbsolutePath());                   if(!flag){                       break;                   }               }           }                      if(!flag){               System.out.println("删除目录失败");               return false;           }                      //删除当前目录           if(dirFile.delete()){               System.out.println("删除目录"+dir+"成功!");               return true;           }else{               System.out.println("删除目录"+dir+"失败!");               return false;           }       }              public static void main(String[] args) {           //String fileName = "g:/temp/xwz.txt";           //DeleteFileUtil.deleteFile(fileName);           String fileDir = "G:/temp/temp0/temp1";           //DeleteFileUtil.deleteDirectory(fileDir);           DeleteFileUtil.delete(fileDir);                  }   }  

热点排行