JavaIO流(1)--File类的使用

简介: JavaIO流(1)--File类的使用

文章目录


File类概述

常用构造器

常用方法


File类概述


File类能新建、删除、重命名文件和目录,但不能访问文件内容本身,如果需要访问文件内容本身,则需要使用后续的输入/输出流。


要在Java程序中表示一个真实存在的文件或目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。


File对象可以作为参数传递给流的构造器。


常用构造器


①public File(String pathname)

以pathname为路径创建File对象,可以是绝对路径或者相对路径,如果是相对路径,则默认相对于当前project。


File file1 = new File("hello.txt"); //相对路径
File file2 = new File("C:\\IDEA\\untitled\\file\\hi.txt"); //绝对路径


②public File(String parent,String child)

以parent为父路径,child为子路径创建File对象。


File file3 = new File("C:\\IDEA\\untitled\\", "file");


③public File(File parent,String child)

根据一个父File对象和子文件路径创建File对象


File file3 = new File("C:\\IDEA\\untitled\\", "file");
File file4 = new File(file3, "hi.txt");


常用方法


①File类的获取功能

public String getAbsolutePath():获取绝对路径

public String getPath():获取路径

public String getName():获取名称

public String getParent():获取上层文件目录路径,若无,返回null

public long length():获取文件长度(即:字节数),不能获取目录的长度

public long lastModified():获取最后一次的修改时间,毫秒值

public String[] list():获取指定目录下的所有文件或者文件目录的名称数组

public File[] listFiles():获取指定目录下的所有文件或文件目录构成的数组


import java.io.File;
/**
 * @Author: Yeman
 * @Date: 2021-09-24-21:50
 * @Description:
 */
public class FileTest {
    public static void main(String[] args) {
        File file1 = new File("hello.txt");
        File file2 = new File("C:\\IDEA\\untitled\\file\\hi.txt");
        System.out.println(file1.getAbsolutePath());
        System.out.println(file1.getPath());
        System.out.println(file1.getName());
        System.out.println(file1.getParent());
        System.out.println(file1.length());
        System.out.println(file1.lastModified());
        System.out.println(file2.getAbsolutePath());
        System.out.println(file2.getPath());
        System.out.println(file2.getName());
        System.out.println(file2.getParent());
        System.out.println(file2.length());
        System.out.println(file2.lastModified());
    }
}


②File类的重命名功能

public boolean renameTo(File dest):把文件重命名为指定的文件路径和文件名,相当于是把真实文件转移并且重命名了


import java.io.File;
/**
 * @Author: Yeman
 * @Date: 2021-09-24-21:50
 * @Description:
 */
public class FileTest {
    public static void main(String[] args) {
        File file1 = new File("hello.txt"); //file1需要在硬盘中真实存在
        File file2 = new File("C:\\IDEA\\hi.txt"); //在硬盘中不存在file2
        boolean b = file1.renameTo(file2);
        System.out.println(b);
    }
   } 


③File类的判断功能

硬盘中要真实存在才能做出真实判断

public boolean isDirectory():判断是否是文件目录

public boolean isFile():判断是否是文件

public boolean exists():判断是否存在

public boolean canRead():判断是否可读

public boolean canWrite():判断是否可写

public boolean isHidden():判断是否隐藏


④File类的创建功能

public boolean createNewFile():创建文件,若文件存在,则不创建,返回false

public boolean mkdir():创建文件目录,如果此文件目录存在,就不创建了,如果此文件目录的上层目录不存在,也不创建

public boolean mkdirs():创建文件目录,如果上层文件目录不存在,一并创建


⑤File类的删除功能

public boolean delete():删除文件或者文件夹

删除注意事项:Java中的删除不走回收站。要删除一个文件目录,请注意该文件目录内不能包含文件或者文件目录


import java.io.File;
import java.io.IOException;
/**
 * @Author: Yeman
 * @Date: 2021-09-24-21:50
 * @Description:
 */
public class FileTest {
    public static void main(String[] args) throws IOException {
        File file1 = new File("hello.txt");
        if (!file1.exists()){
          //文件不存在,创建
            file1.createNewFile();
            System.out.println("创建成功");
        }else {
          //文件存在,删除
            file1.delete();
            System.out.println("删除成功");
        }
    }
}



相关文章
|
3天前
|
存储 Java 测试技术
Java-File类与IO流(1)
Java-File类与IO流(1)
10 0
|
3天前
|
存储 自然语言处理 Java
Java-File类与IO流(2)
Java-File类与IO流(2)
8 0
|
9月前
|
存储 Android开发
Java_File类的基本用法
Java_File类的基本用法
43 0
|
10月前
|
存储 Java Unix
【Java|基础篇】File类和IO流
.File类 File类是Java中用于表示文件或目录的类。它提供了一些方法来操作文件和目录的属性和内容,可以进行文件的创建、删除、重命名等操作。
|
存储 Java API
11 javaIO流---看看这些关于文件的操作你都懂了么
O流思维导图 IO知识点多且复杂,对于后期项目优化有重要作用,弄懂IO流是十分必要的
64 0
11 javaIO流---看看这些关于文件的操作你都懂了么
|
存储 移动开发 Java
【Java 基础】File & IO流
【Java 基础】File & IO流
|
Java 索引
Java文件IO流的操作总结
Java文件IO流的操作总结
96 0
Java 进阶File类、IO流
Java 进阶File类、IO流
154 0
Java 进阶File类、IO流
|
Java Unix Windows
【Java基础 | IO流】File类概述和常用方法使用
【Java基础 | IO流】File类概述和常用方法使用
122 0
【Java基础 | IO流】File类概述和常用方法使用