package my.file; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.io.Writer; public class TravelAllFile { public static void main(String[] args) { String path = "E:/文件夹"; File f = new File(path); if (f.isDirectory()) { new TravelAllFile().getFileName(f); } delFolder("E:/文件夹"); System.out.println("deleted"); } // 递归查找函数,参数为file对象 public void getFileName(File f) { // File 数组 File[] files = f.listFiles(); for (int i = 0; i < files.length; i++) { // 递归出子目录 if (files[i].isDirectory()) { System.out.println("子目录是:" + files[i].getName()); getFileName(files[i]); // 递归出子文件 } else { System.out.println(files[i].getName()); } } } //重命名 public void rename(){ File fl=new File("E://文件夹"); // 这里写上发替换的文件夹路径,注意使用双斜杠 String[] files=fl.list(); File f=null; String filename=""; for(String file:files) { f=new File(fl,file);// 注意,这里一定要写成File(fl,file)如果写成File(file)是行不通的,一定要全路径 filename=f.getName(); // System.out.println(filename); f.renameTo(new File(fl.getAbsolutePath()+"//"+filename.replace("要替换掉的内容", "替换成的内容")));// 这里可以反复使用replace替换,当然也可以使用正则表达式来替换了 } } //删除文件夹 //param folderPath 文件夹完整绝对路径 public static void delFolder(String folderPath) { try { delAllFile(folderPath); //删除完里面所有内容 String filePath = folderPath; filePath = filePath.toString(); java.io.File myFilePath = new java.io.File(filePath); myFilePath.delete(); //删除空文件夹 } catch (Exception e) { e.printStackTrace(); } } //删除指定文件夹下所有文件 //param path 文件夹完整绝对路径 public static boolean delAllFile(String path) { boolean flag = false; File file = new File(path); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } String[] tempList = file.list(); File temp = null; for (int i = 0; i < tempList.length; i++) { if (path.endsWith(File.separator)) { temp = new File(path + tempList[i]); } else { temp = new File(path + File.separator + tempList[i]); } if (temp.isFile()) { temp.delete(); } if (temp.isDirectory()) { delAllFile(path + "/" + tempList[i]);//先删除文件夹里面的文件 delFolder(path + "/" + tempList[i]);//再删除空文件夹 flag = true; } } return flag; } /** * 创建目录 * @param dirPath */ static Boolean createDir(String dirPath){ File dirFile = new File(dirPath); return dirFile.mkdirs(); } /** * 创建文件 * @param filePath * @param content * @return Boolean */ static Boolean createFile(String filePath,String content){ Writer writer = null; File file = new File(filePath); File temp = new File(file.getParent()); if(!temp.exists()){ createDir(file.getParent()); } try{ writer = new OutputStreamWriter(new FileOutputStream(file)); writer.write( content ); }catch(Exception e){ e.printStackTrace(); return false; }finally{ try{ if(writer!=null){ writer.close(); } }catch(Exception e1){ e1.printStackTrace(); } } return true; } }