设为首页 加入收藏

TOP

2011年计算机二级考试JAVA知识点整理(27)
2014-10-31 22:45:08 】 浏览:273
Tags:2011年 计算机 二级 考试 JAVA 知识点 整理

  1.1.3.2.10 获取文件信息


  迄今为止我们的讨论围绕单一的文件输入输出。但是加速I/O性能还有另一方面--和得到文件特性有关。例如,考虑一个打印文件长度的小程序:


  import java.io.*;


  public class length1 {


  public static void main(String args[]) {


  if (args.length != 1) {


  System.err.println("missing filename");


  System.exit(1);


  }


  File f = new File(args[0]);


  long len = f.length();


  System.out.println(len);


  }


  }


  Java运行时系统自身并不知道文件的长度,因此必须向底层的操作系统查询以获得这个信息,对于文件的其他信息这也成立,例如文件是否是一个目录,文件上次修改时间等等。 java.io包中的File 类提供一套查询这些信息的方法。这些方法总体来说在时间上开销很大因此应该尽可能少用。


  下面是一个查询文件信息的更长的范例,它递归整个文件系统写出所有的文件路径:


  import java.io.*;


  public class roots {


  public static void visit(File f) {


  System.out.println(f);


  }


  public static void walk(File f) {


  visit(f);


  if (f.isDirectory()) {


  String list[] = f.list();


  for (int i = 0; i < list.length; i++)


  walk(new File(f, list[i]));


  }


  }


  public static void main(String args[]) {


  File list[] = File.listRoots();


  for (int i = 0; i < list.length; i++) {


  if (list[i].exists())


  walk(list[i]);


  else


  System.err.println("not accessible: " + list[i]);


  }


  }


  }


  这个范例使用 File 方法,例如 isDirectory 和 exists,穿越目录结构。每个文件都被查询一次它的类型 (普通文件或者目录)。


  这个范例使用 File 方法,例如 isDirectory 和 exists,穿越目录结构。每个文件都被查询一次它的类型 (普通文件或者目录)。


  这个范例使用 File 方法,例如 isDirectory 和 exists,穿越目录结构。每个文件都被查询一次它的类型 (普通文件或者目录)。


  编辑推荐:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇2011年计算机二级考试JAVA知识点.. 下一篇2011年计算机二级考试JAVA知识点..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目