File类

1. File类

./当前目录

../上一级路径目录

../../上两级目录

1.1 File类的构造方法

语法格式

File file = new File(“路径名”);
File file = new File(String parent, String child);
1.2 File类下面的方法
1.2.1 添加
boolean  createNewFile();
创建一个文件

boolean mkdir();
创建一个单级路径

boolean mkdirs();
创建多级路径
package com.qfedu.b_file;

import java.io.File;
import java.io.IOException;

public class Demo2 {
   public static void main(String[] args) throws IOException {
       File file = new File("c:/aaa/1.txt");
       System.out.println(file.createNewFile());
       File file1 = new File("c:/aaa/bbb");
       System.out.println(file1.mkdir());//单级路径

       File file2 = new File("c:/aaa/ccc/ddd");
       System.out.println(file2.mkdirs());//多级路径
       

  }
}
1.2.2 删除
boolean delete();
立即删除文件
void deleteOnExit();
程序退出后删除文件
package com.qfedu.b_file;

import java.io.File;
import java.util.Scanner;

public class Demo3 {
   public static void main(String[] args) {
       File file = new File("c:/aaa/1.txt");
       System.out.println(file.delete());
       //删除一个非空的文件夹,是删除不了的,咋办?递归
       File file1 = new File("c:/aaa/ccc");
       System.out.println(file1.delete());

       File file2 = new File("c:/aaa/bbb");
       System.out.println(file2.delete());
       File file3 = new File("c:/aaa/ccc/ddd");
       file3.deleteOnExit();
       //如果保证程序不退出
       new Scanner(System.in).nextInt();

  }
}
1.2.3 判断
boolean isFile();【常用】
是否文件

boolean isDirectory();【常用】
是否是文件夹

boolean isHidden();
是否是隐藏文件

boolean isAbsolute();
是否是绝对路径

boolean exists();【重要】
文件或文件夹是否存在
package com.qfedu.b_file;

import java.io.File;
import java.io.IOException;

public class Demo4 {
   public static void main(String[] args) throws IOException {
       File file = new File("c:/aaa");
       System.out.println(file.isFile());//false
       File file1 = new File("c:/aaa/2.gif");
       System.out.println(file1.isFile());//true
       System.out.println(file.isDirectory());//true
       System.out.println(file1.isDirectory());//false
       File file2 = new File("c:/aaa/2.txt");
       System.out.println(file2.isHidden());//true
       System.out.println(file1.isHidden());//false
       System.out.println(file.isAbsolute());//true

       File file3 = new File("./");
       System.out.println(file3.isAbsolute());//false

       System.out.println(file1.exists());//true
       if (!file1.exists()) {
           file1.createNewFile();
      }
  }
}
1.2.4 获取
File[]   listFiles();
获取当前文件夹下所有的文件

String[] list();
获取当前文件夹下所有文件的名字
package com.qfedu.b_file;

import java.io.File;

public class Demo7 {
   public static void main(String[] args) {
       File file = new File("c:/");
       File[] files = file.listFiles();
       for (File file1 : files) {
           //列出来的是对象 File
           System.out.println(file1);
      }
       System.out.println("=======");
       String[] list = file.list();
       for (String s : list) {
           //文件的名字
           System.out.println(s);
      }
  }
}

 

1.2.5 返回值为String类型
String getName(); 
获取文件或文件夹名字

String getPath();
获取当前对象的路径的

String getParent();
获取当前文件上一级的目录
package com.qfedu.b_file;

import java.io.File;

public class Demo5 {
  public static void main(String[] args) {
      File file = new File("c:\\aaa\\2.gif");
      System.out.println(file.getName());//2.gif
      System.out.println(file.getParent());//c:\aaa
      System.out.println(file.getPath());//c:\aaa\2.gif
      System.out.println(file);
     


  }
}
1.2.6 返回值为long类型
long lenght();
返回当前文件占用字节数

long lastModified();
获取当前文件最后一次修改的时间戳
package com.qfedu.b_file;

import java.io.File;

public class Demo6 {
   public static void main(String[] args) {
       File file = new File("c:/aaa/8.txt");
       System.out.println(file.length());//48

       //1659687558179  
       //从1970 1月1日 0时 0分 0 秒 ~ 2022 8 5 16:19
       //的毫秒数
       System.out.println(file.lastModified());
       
  }
}
 

 

posted @ 2022-08-06 16:26  早睡晚起身体好  阅读(31)  评论(0)    收藏  举报