java学习笔记——File

目录

知识点

1.File表示什么

2.绝对路径和相对路径是什么意思

3.File三种构造方法

4.File的常见成员方法(判断返回)

5.File的常见成员方法(创建删除)

6.File的常见成员方法(简单遍历)

7.File的常见成员方法(遍历)

代码实现

1.File三种构造方法

2.File的常见成员方法(判断返回)

3.File的常见成员方法(创建删除)

4.File的常见成员方法(简单遍历)

5.File的常见成员方法(遍历)


知识点

1.File表示什么

        File对象表示路径,可以是文件、也可以是文件夹。这个路径可以是存在的,也可以是不存在的

2.绝对路径和相对路径是什么意思

        绝对路径是带盘符的,相对路径是不带盘符的,默认到当前项目下去找

3.File三种构造方法

        public File(String pathname)把字符串表示的路径变成File对象

        public File(String parent,String child)把父级路径和子级路径进行拼接

        public File(File parent,String child)把父级路径和子级路径进行拼接

4.File的常见成员方法(判断返回)
方法名称说明
public boolean isDirectory()

判断此路径名表示的File是否为文件夹

public boolean isFile() 判断此路径名表示的File是否为文件
public boolean exists()判断此路径名表示的File是否存在
public long length返回文件的大小(字节数量)
public String getAbsoulutePath()返回文件的绝对路径
public String getPath()返回定义文件时使用的路径
public String getName()返回文件的名称,带后缀
public long lastModified()返回文件的最后修改时间(时间毫秒值)
5.File的常见成员方法(创建删除)
方法名称说明
public boolean createNewFile()创建一个新的空的文件
public boolean mkdir()创建单级文件夹
public boolean mkdirs()创建多级文件夹
public boolean delete()删除文件、空文件夹
6.File的常见成员方法(简单遍历)
方法名称说明
public File[] listFiles()获取当前该路径下所有内容

        当调用者File表示的路径不存在时,返回null

        当调用者File表示的路径是文件时,返回null

        当调用者File表示的路径是空文件夹时,返回一个长度为0的数组

        当调用者File表示的路径是非空件夹时,将里面所有文件和文件夹路径放在File数组中(包括隐藏文件)

        当调用者File表示的路径需要权限才能访问,返回null

7.File的常见成员方法(遍历)
方法名称说明
public static File[] listRoots()列出可用的文件系统根
public String[] list()获取当前路径下所有内容
publc String[] list(FilenameFilter filter)利用文件名过滤器获取当前路径下所有内容
public File[] listFiles()获取当前路径下所有内容
public File[] listFiles(FileFilter filter)利用文件过滤器获取当前路径下所有内容
public File[] listFiles(FilenameFilter filter)利用文件过滤器获取当前路径下所有内容

代码实现

1.File三种构造方法
package filetest1;

import java.io.File;

public class FileDemo {
    public static void main(String[] args) {
        //File对象的三种构造方法
        String str="C:\\Users\\Public\\Desktop\\IntelliJ IDEA Community Edition 2022.2.2.lnk";
        File f1=new File(str);
        System.out.println(f1);

        String parent="C:\\Users\\Public\\Desktop";
        String child="IntelliJ IDEA Community Edition 2022.2.2.lnk";
        File f2=new File(parent,child);
        System.out.println(f2);

        File parentFile=new File(parent);
        File f3=new File(parentFile,child);
        System.out.println(f3);
    }
}
2.File的常见成员方法(判断返回)
package filetest2;

import java.awt.*;
import java.io.File;
import java.text.SimpleDateFormat;

public class FileDemo {
    public static void main(String[] args) {
        File f1=new File("C:\\Users\\Public\\Desktop\\IntelliJ IDEA Community Edition 2022.2.2.lnk");
        System.out.println(f1.isFile());//是否文件
        System.out.println(f1.isDirectory());//是否文件夹
        System.out.println(f1.exists());//是否存在
        System.out.println(f1.length()+"字节");//文件大小(无法获取文件夹大小)
        System.out.println(f1.getAbsolutePath());//返回绝对路径
        System.out.println(f1.getPath());//返回定义文件时的路径
        System.out.println(f1.getName());//返回文件名(带后缀名)
        System.out.println(f1.lastModified());//返回文件最后修改时间
        new SimpleDateFormat();
    }
}
3.File的常见成员方法(创建删除)
package filetest3;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;

public class FileDemo {
    public static void main(String[] args) throws IOException {
        File f1=new File("G:\\JavaProgram\\java\\src\\filetest3\\file.txt");
        System.out.println(f1.createNewFile());//创建文件
        File f2=new File("G:\\JavaProgram\\java\\src\\filetest3\\directory1");
        System.out.println(f2.mkdir());//创建单级文件夹
        File f3=new File("G:\\JavaProgram\\java\\src\\filetest3\\directory2\\directory3");
        System.out.println(f3.mkdirs());//创建多级文件夹

        File f4=new File("G:\\JavaProgram\\java\\src\\filetest3");//非空文件夹
        System.out.println(f1.delete());//如果删除的是文件则直接删除,不进入回收站
        System.out.println(f2.delete());//如果删除的是空文件夹则直接删除,不进入回收站
        System.out.println(f4.delete());//如果删除的是非空文件夹则删除失败

        //new File("G:\\JavaProgram\\java\\src\\filetest3\\directory2\\directory3").delete();
        //new File("G:\\JavaProgram\\java\\src\\filetest3\\directory2").delete();
    }
}
4.File的常见成员方法(简单遍历)
package filetest4;

import java.io.File;
import java.text.SimpleDateFormat;

public class FileDemo {
    public static void main(String[] args) {
        File f1 = new File("G:\\JavaProgram\\java\\src\\filetest4");
        File[] files = f1.listFiles();
        for (File file : files) {//循环从files数组中取出file
            System.out.println(file);
        }
    }
}
5.File的常见成员方法(遍历)
package filetest5;

import java.io.*;
import java.util.Arrays;

public class FileDemo {
    public static void main(String[] args) {
        //获取系统所有盘符
        File[] arr1=File.listRoots();
        System.out.println(Arrays.toString(arr1));

        //获取当前路径下所有内容
        File f1=new File("src\\filetest5");
        String[] arr2=f1.list();
        for (String s:arr2){
            System.out.println(s);
        }

        //获取当前路径下文件过滤器后的内容(FilenameFilter)
        File f2=new File("src\\filetest5");
        File[] arr3=f2.listFiles(new FilenameFilter() {
            @Override
            public boolean accept(File dir,String name) {
                File src=new File(dir,name);
                return src.isFile()&&name.endsWith(".txt");
            }
        });
        for (File f:arr3){
            System.out.println(f);
        }

        //获取当前路径下文件过滤器后的内容(FileFilter)
        File f3=new File("src\\filetest5");
        File[] arr4=f3.listFiles(new FileFilter() {
            @Override
            public boolean accept(File pathname) {
                return pathname.isFile()&&pathname.getName().endsWith(".txt");
            }
        });
        for (File f:arr4){
            System.out.println(f);
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值