/** * Delete all the file or directory whose name contains nameCondition. * * @param destinationFile specifying the destination file * @param nameCondition specifying search condition * @throws IOException */ public void deleteFileByName(File destinationFile, String nameCondition) throws IOException{ // if(nameCondition.toLowerCase().indexOf(destinationFile.getName().toLowerCase())>-1){ deleteFileAlways(destinationFile); return; } File[] files = destinationFile.listFiles(); for(File file :files){//i=0;i<files.length;i++ if(nameCondition.toLowerCase().indexOf(file.getName().toLowerCase())>-1){ deleteFileAlways(file); }else if(file.isDirectory()){ deleteFileByName(file,nameCondition); } } }
/** * Delete the destination file, If it is a directory, delete all child file * of it and then delete it. */ public boolean deleteFileAlways(File destinationFile) throws IOException { if (destinationFile == null) { return false; } else if (destinationFile.isFile()) { destinationFile.delete(); return true; } else { File[] files = destinationFile.listFiles(); for (File file : files) { if (file.isFile()) { file.delete(); } else { deleteFileAlways(file); file.delete(); } } destinationFile.delete(); } return true; }
public boolean moveFile(String sFrom,String sTo) { if(sFrom== null || sTo==null){ return false; } File source_file = new File(sFrom); File dest_file = new File(sTo); if(!source_file.exists()){ return false; } return source_file.renameTo(dest_file); }