昨天遇见一个笔试题,打印一个文件下的文件,每一层用+号代替!
用txt写代码,可难为死我了,而且还对IO不熟悉,终究还是自己太菜了
例如:在F盘下有一个第一的文件夹-------F:\第一(里面有多个文件和文件夹)
我还是想吐槽,笔试考算法用文本框的!!!!!
不多说,上代码:(我用的递归的方式)
package 遍历文件夹;
import java.io.File;
/**
* CodeTest
*
* @zhangqian
* @time:2021/10/31 15:55
*/
public class test {
public static void main(String[] args) {
File f=new File("F:\\第一");
new test().T(f);
}
public void T(File file){
if(file.isFile()){
String s=file.getAbsolutePath();
for(int i=0;i<s.length();i++){
char c=s.charAt(i);
if(c=='\\'){
System.out.print("+");
}
}
System.out.println(file.getName());
System.out.println(file.getAbsolutePath());
}
File[] f=file.listFiles();
if(f!=null&&f.length>0){
for(File ff:f){
T(ff);
}
}
}
}
结论: 多练,起码不会和我一样记不住io