关于File类的学习

// 1、file不单单代表文件,代表一个文件夹
 // 2、file类一个唯一一与文件有关的操作类

 public static void main(String[] args) {
  // 创建文件d://abc.txt文档
  File file = new File("d://abc.txt");// 构造需要填入路径,路径可以代表文件,也可以代表文件夹
  // 创建文件
  try {
   file.createNewFile();
  } catch (IOException e) {
   e.printStackTrace();
  }
  // 创建文件夹--->多个文件夹
  File dir = new File("d:" + File.separator + "abc1" + File.separator
    + "ac");
  boolean b = dir.mkdirs();
  System.out.println(b);
  // mkdir必须要父文件存在的情况才能创建文件夹
  // mkdirs如果该路径下的其他文件不存在就一并创建

  File dirs = new File("d:" + File.separator + "zzz" + File.separator
    + "ccc");
  System.out.println(dirs.getAbsolutePath());
  boolean s = dirs.mkdirs();
  if (s) {
   File files = new File(dirs.getAbsolutePath() + "/123.doc");
   try {
    files.createNewFile();
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
  // 删除文件夹
  File files = new File("d://aaa");
  if (files.isFile()) {
   System.out.println("这货是文件");
  } else if (files.isAbsolute()) {
   System.out.println("这货是文件夹");
   String[] list = files.list();// 列出文件名
   File[] files2 = files.listFiles();// 列出文件类
   System.out.println("" + Arrays.toString(list));
   System.out.println("" + Arrays.toString(files2));
   for (int i = 0; i < files2.length; i++) {

    files2[i].delete();// 删除文件夹--->只能删空文件夹
   }
  }
 }

 // 递归删除文件
 public static void deleDir(File dir) {

  if (dir.isAbsolute()) {
   File[] files = dir.listFiles();
   for (int i = 0; i < files.length; i++) {
    deleDir(files[i]);
   }
  }
  System.out.println("文件已经遍历完了!");
  dir.delete();
 }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章