关于递归文件的一点小问题
?
?
今天用到递归去给文件加索引时发现的一点小问题,在此记录一下,希望能帮助到有用的人。
先把我的代码给贴出来吧。
public static void indexDirectory(File file) throws Exception{//File[] files = file.listFiles();//for(File f : files)//{//if(f.isDirectory())//indexDirectory(f); //else if(f.getName().endsWith(".txt"))//{//System.out.println(f.getName());//}//}File[] files = file.listFiles();for (File f : files){if(f.isDirectory()){indexDirectory(f);}else if(f.getName().endsWith(".txt"));{System.out.println(" fileName :" + f.getName());}}}?上面注释掉的是正确的.
我明明是只需要txt结尾的文件的,结果我用下面的那个错误的打印时把传入的文件夹里面所有文件和文件夹的名字都打印出来了,. 害我找了老半天不知道是哪里错了.结果才发现是elseif 后面多了一个分号. 把elseif? 语句结束了. 后面就把所有的文件和文件名字给打印出来了.
唉... 就一个分号的问题啊.