自己用Java寫的類似於Linux tree命令組建檔案樹,直接上代碼吧
import java.io.*;import java.util.Arrays;/** * Created by su123 on 2017/4/9. */public class fileIO { public static void main(String[] args) { File file = new File("D:\\apache-tomcat-7.0.77-windows-x64"); File dest = new File("dco.txt"); BufferedWriter out = null; out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(dest,true))); listPath(file,out); } static int indentLevel = -1; public static void listPath(File path,BufferedWriter out) { File files[]; indentLevel++; files = path.listFiles(); Arrays.sort(files); try{ for (int i = 0, n = files.length; i < n; i++) { File file = files[i]; if (file.isDirectory()){ System.out.print("|"); out.write("|"); for (int indent = 0; indent < indentLevel; indent++) { System.out.print("--"); out.write("--"); } }else{ for (int indent = 0; indent < indentLevel; indent++) { System.out.print(" "); out.write(" "); } System.out.print("|--"); out.write("|--"); } if (file.isDirectory()) { System.out.println("d:"+file.getName()); out.write("d:"+file.getName()); out.newLine(); } else { System.out.println("f:"+file.getName()); out.write("f:"+file.getName()); out.newLine(); } if (files[i].isDirectory()) { listPath(files[i],out); } } }catch (IOException e){ e.printStackTrace(); } indentLevel--; }}