下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

File类的综合示例自我解析 核心分析是关键

作者:课课家教育     来源: http://www.kokojia.com点击数:732发布时间: 2016-02-07 17:26:25

标签: java开发java系统教程Java软件测试

大神带你学编程,欢迎选课

  下面以两个示例演示File类的综合使用。第一个示例是显示某个文件夹下的所有文件和文件夹,原理是输出当前名称,然后判断当前File对象是文件还是文件夹,如果则获得该文件夹下的所有子文件和子文件夹,并递归调用该方法实现。第二个示例是删除某个文件夹下的所有文件和文件夹,原理是判断是否是文件,如果是文件则直接删除,如果是文件夹,则获得该文件夹下所有的子文件和子文件夹,然后递归调用该方法处理所有子文件和子文件夹,然后将空文件 夹删除。则测试时谨慎使用第二个方法,以免删除自己有用的数据文件。示例代码如下:

  import java.io.File;

  /**

  *文件综合使用示例

  */

  public class AdvanceFileDemo {

  public static void main(String[] args) {

  File f = new File("e:\\\\Book");

  printAllFile(f);

  File f1 = new File("e:\\\\test");

  deleteAll(f1);

  }

  /**

  *打印f路径下所有的文件和文件夹

  * @param f文件对象

  */

  public static void printAllFile(File f){

  //打印当前文件名

  System.out.println(f.getName());

File类的综合示例自我解析_java教材_java环境_课课家

  //是否是文件夹

  if(f.isDirectory()){

  //获得该文件夹下所有子文件和子文件夹

  File[] f1 = f.listFiles();

  //循环处理每个对象

  int len = f1.length;

  for(int i = 0;i < len;i++){

  //递归调用,处理每个文件对象

  printAllFile(f1[i]);

  }

  }

  }

  /**

  *删除对象f下的所有文件和文件夹

  * @param f文件路径

  */

  public static void deleteAll(File f){

  //文件

  if(f.isFile()){

  f.delete();

  }else{ //文件夹

  //获得当前文件夹下的所有子文件和子文件夹

  File f1[] = f.listFiles();

  //循环处理每个对象

  int len = f1.length;

  for(int i = 0;i < len;i++){

  //递归调用,处理每个文件对象

  deleteAll(f1[i]);

  }

  //删除当前文件夹

  f.delete();

  }

  }

  }

  关于File类的使用就介绍这么多,其它的方法和使用时需要注意的问题还需要多进行练习和实际使用。

赞(19)
踩(2)
分享到:
华为认证网络工程师 HCIE直播课视频教程