See More

/** * @function: ²éÕÒÎļþ¼ÐÖаüº¬µÄÎļþ * @parameter: ÊÖ¶¯ÊäÈëÄ¿±êÎļþ¼Ð * @return: Êä³öËùÓÐÎļþ * @author: ywang * @date: 2015-10-12 * */ package Test; import java.io.*; import java.util.Scanner; public class SearchFile { static int level = 0; /************************************** °æ±¾1 public static void fileSearch(File file) { System.out.println(file.getName() + "/"); level++; for (int j = 0; j < level; j++) { System.out.print("\t"); } File[] listfiles = file.listFiles(); if (listfiles.length == 0) { System.out.println("There is no files!"); return ; } for (int i = 0; i < listfiles.length; i++) { if (listfiles[i].isDirectory()) { fileSearch(listfiles[i]); level--; } else { if (i != 0) { for (int j = 0; j < level; j++) { System.out.print("\t"); } } System.out.println(listfiles[i].getName()); } } } ¸ñʽλÖ㬷dz£ÇÉÃlevel++ --µÄλÖÃµÈ *******************************************************************/ /***************************** °æ±¾2 ********************************** public static void fileSearch(File file) { for (int j = 0; j < level; j++) { System.out.print("\t"); } System.out.println(file.getName() + "/"); level++; for (int j = 0; j < level; j++) { System.out.print("\t"); } File[] listfiles = file.listFiles(); if (listfiles.length == 0) { System.out.println("There is no files!"); return ; } for (int i = 0; i < listfiles.length; i++) { if (listfiles[i].isDirectory()) { fileSearch(listfiles[i]); level--; } else { System.out.println(listfiles[i].getName()); if (i != listfiles.length - 1) { for (int j = 0; j < level; j++) { System.out.print("\t"); } } } } } **************************************************************************/ /***************************** °æ±¾3 **************************************/ public static void fileSearch(File file) { System.out.println(file.getName() + "/"); level++; File[] listfiles = file.listFiles(); if (listfiles.length == 0) { System.out.println("There is no files!"); return ; } for (int i = 0; i < listfiles.length; i++) // ÖÕÓÚ½â¾öÁË£¬½«Ä¿Â¼ºÍÎļþÍêÈ«·Ö¿ª£¬µ¥¶À̸ÂÛ¼´¿É£¡¼òµ¥´Ö±©£¡£¡£¡£¡£¡ { if (listfiles[i].isDirectory()) { for (int j = 0; j < level; j++) { System.out.print("\t"); } fileSearch(listfiles[i]); level--; } else { for (int j = 0; j < level; j++) { System.out.print("\t"); } System.out.println(listfiles[i].getName()); } } } public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Please input the directory name: "); String filename = input.next(); // "./": Exercise/ Îļþ¼Ð "../": workspace/ Îļþ¼Ð File file = new File(filename); if (! file.exists()) { System.out.println(filename + " does not exist!"); System.exit(0); } if (file.isDirectory()) { fileSearch(file); } else { System.out.println(file.getName() + " is not a directory!"); } input.close(); } }