为什么目录改成“d:\\”就运行不起来?

public class TestFile {
 public static void show(File f){
  if(f.isDirectory()){
   File[]ff=f.listFiles();


   for(int k=0;k<ff.length ;k++){
    show(ff[k]);
   }
  }
  System.out.println(f.getAbsolutePath());
 }
 public static void main(String[]args)throws Exception{
  File f=new File("d://1

http://img.mukewang.com/5927f82d0001327010050598.jpg

http://img.mukewang.com/5927f82e0001379c10440641.jpg

");
  show(f);
 }
}



TOW哈克
浏览 1356回答 1
1回答

慕仰9221625

磁盘根目录有些隐藏的无法访问的系统文件夹,当在读取到这些文件夹时无法读到它的文件夹内部,会返回null,从而引起异常,做个判断即可public class TestFile { public static void show(File f) { if (f.isDirectory()) { File[] ff = f.listFiles(); if (ff != null) { for (int k = 0; k < ff.length; k++) { show(ff[k]); } } } System.out.println(f.getAbsolutePath()); } public static void main(String[] args) throws Exception { File f = new File("d:\\"); show(f); } }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java