JAVASE——File类

简介

文件目录路径名的抽象表示形式(文件或者目录路径名),和四大家族无关

注意点:

  1. File 类和四大家族没有关系,所以File类不能完成文件的读写
  2. File对象代表什么? 文件和目录路径名的抽象表示形式; c:\Drivers 这是一个File对象; c:\Drivers\Lan\Realtek\Readme.txt 这也是一个File对象; 一个File对象有可能对应的是目录,也可能是文件

实现代码

判断文件是否存在

   File f1=new File("D:\\file");
 System.out.println(f1.exists());

在这里插入图片描述

D盘根目录下无File文件

以文件的形式创建

  if(!f1.exists()){
    
    
            f1.createNewFile();
        }

在这里插入图片描述

以目录的形式创建

  if(!f1.exists()){
    
    
            f1.mkdir();
}

在这里插入图片描述

补充

以多重目录的形式新建(即D:\file\file1\file2\file3):

 f1.mkdirs();

如何获取父路径

第一种

获取文件的父路径1:

  		
            String parentPath=f1.getParent();
            System.out.println(parentPath);

在这里插入图片描述

第二种

  				File parentFile =f1.getParentFile();
            	System.out.println("获取绝对路径:"+parentFile.getAbsolutePath());

在这里插入图片描述

如何获取绝对路径

package File;


import java.io.File;

/*
* 1.File 类和四大家族没有关系,所以File类不能完成文件的读写
* 2.File对象代表什么?
*   文件和目录路径名的抽象表示形式
*   c:\Drivers  这是一个File对象
*   c:\Drivers\Lan\Realtek\Readme.txt  这也是一个File对象
*   一个File对象有可能对应的是目录,也可能是文件
* */
public class FileTest01 {
    
    
    public static void main(String[] args)throws  Exception {
    
    

        File f1=new File("D:\\file");

        //如果D:\file不存在,则以文件的形式创建出来
        if(!f1.exists()){
    
    
       //     f1.createNewFile();
        }
       //如果D:\file不存在,则以目录的形式创建出来
        if(!f1.exists()) {
    
    
            f1.mkdir();
        }
          
            File f4=new File("copy");
            System.out.println("获取绝对路径:"+f4.getAbsolutePath());

    }
}

在这里插入图片描述

获取文件名

 File f1=new File("copy");
//获取文件名
System.out.println("文件名:"+f1.getName());

在这里插入图片描述

判断是否是一个目录:

 File f1=new File("copy");
 System.out.println(f1.isDirectory());

在这里插入图片描述

判断是否是一个文件:

 File f1=new File("copy");
 System.out.println(f1.isFile());

在这里插入图片描述

获取文件最后一次修改时间

  File f1=new File("copy");
  long haomiao=f1.lastModified();//这个毫秒是从1970年到现在的总毫秒数

        //将总毫秒数转换成日期
        Date time=new Date(haomiao);
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS") ;
        String  strTime   =sdf.format(time);
        System.out.println(strTime);

在这里插入图片描述

获取文件大小

  File f1=new File("copy");
  System.out.println(f1.length());

在这里插入图片描述
在这里插入图片描述

给文件重命名

 File f1=new File("copy");
 File f2=new File("copy1");
  f1.renameTo(f2);

执行前

在这里插入图片描述

执行后

在这里插入图片描述

注意:调用renameTo函数的一定是原来那个文件名

获取当前目录下面的所有子目录(重点)

获取当前目录下面的所有子目录

 File[] listFiles()
        File f=new File("src");

        File[]files=f.listFiles();

        for(File file:files){
    
    
            System.out.println(file.getAbsolutePath());

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/CSNN2019/article/details/114381066
今日推荐