学习Java6(三) 磁盘空间统计

学习Java6(三) 磁盘空间统计
 1  import java.io.File;
 2 
 3  public class SpaceChecker {
 4      public static  void  main(String[] args) {
 5          File[] roots  =  File.listRoots();
 6           for  (File _file : roots) {
 7              System.out.println(_file.getPath());
 8              System.out.println(_file.getName());
 9              System.out.println( " Free space =  "   +  _file.getFreeSpace());
10              System.out.println( " Usable space =  "   +  _file.getUsableSpace());
11              System.out.println( " Total space =  "   +  _file.getTotalSpace());
12              System.out.println();
13          }
14          
15          
16          File win  =   new  File( " C:\\WINDOWS " );
17          System.out.println(win.getPath());
18          System.out.println(win.getName());
19          System.out.println( " Free space =  "   +  win.getFreeSpace());
20          System.out.println( " Usable space =  "   +  win.getUsableSpace());
21          System.out.println( " Total space =  "   +  win.getTotalSpace());
22          System.out.println();
23      }
24  }
以上代码也是会输出各个根目录的空闲空间,已用空间,总空间等.

注意:
1 getName取不到分区的卷标.能取到文件夹的名称.
2对文件夹显示的空闲空间等,是所在分区的信息.
3对于有磁盘配额的分区,空闲分区大小不一定等于总大小-已用大小.


疑问:
我把ECLIPSE的JDK一致性降到5.0,以上代码还是能跑.
降到1.4也只是提示不支持for each.
为什么?

你可能感兴趣的:(学习Java6(三) 磁盘空间统计)