Java中IO流File类详解

一篇快速理解JavaIO流

File类的使用

File类的对象代表一个文件或者一个文件目录(俗称:文件夹)。
使用到的API:import java.io.File;


接下来谈一谈File类中的构造器的使用,了解如何创建File实例。
前提:你写了路径的这个文件得要是实际存在的。

    /**
     *  创建File类的实例
     *
     *  路径分隔符:
     *  windows: \\
     *  Linux: /
     */
    @Test
    public void test1(){
        //构造器1
        File file1 =  new File("D:\\workspace\\hello.txt");//绝对路径
        File file2 = new File("he.txt");//相对路径,相对于当前module
        System.out.println(file1);
        System.out.println(file2);

        //构造器2
        //从父路径名字符串和子路径名字符串,创建新的File实例。
        File file3 = new File("D:\\workspace\\","Java");
        System.out.println(file3);

        //构造器3
        //从父抽象路径名和子路径名字符串创建新的 File实例
        File file4 = new File(file3,"hi.txt");
        System.out.println(file4);
    }

判断文件是否存在,文件是不是可读或可写,文件长度是多少,文件的最近修改日期是什么时候。这些功能就不能通过IO流去做了,文件本身就可以做这些事。

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():获取指定目录下的所有文件或者文件目录的file数组。
  • public boolean renameTo(File dest):把文件重命名为指定的文件路径。
    file1.renameto(file2)为例:
    要保证返回true,需要保证file在硬盘中是存在的,且file2不能在硬盘中存在。就相当于移动文件。

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中的删除不走回收站。

File类中,涉及到关于文件或文件目录的创建,删除,重命名,修改时间,文件大小等方法,并未涉及到写入或者读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO流来完成。

File类的对象常会作为参数传递到流的构造器中,指明读取或者写入的“终点”。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黑cc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值