File类

人生之路不会是一帆风顺的,我们会遇上顺境,也会遇上逆境,在所有成功路上折磨你的,背后都隐藏着激励你奋发向上的动机,人生没有如果,只有后果与结果,成熟,就是用微笑来面对一切小事。

导读:本篇文章讲解 File类,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

🏡个人主页 :@ 守夜人st
🚀系列专栏:Java
…持续更新中敬请关注…
🙉博主简介:软件工程专业,在校学生,写博客是为了总结回顾一些所学知识点

✈️推荐一款模拟面试,刷题神器,从基础走向大场面试👉 开启你的刷题之路吧

File类

File类概述

File类包含在包java.io.File下、代表操作系统的文件对象(文件、文件夹)

File类提供了诸如:定位文件,获取文件本身信息、删除文件、创建文件(文件夹)等方法

File类创建对象

方法名称 说明
public File(String pathname) 根据文件路径创建文件对象
public Flie(String parent,String child) 从父路径名字符串和子路径名字符串创建文件对象
public File(File parent,String child) 根据父路径对应文件对象和子路径名字符串创建文件对象
package com.shouyeren.oop.api.File_api;

import java.io.File;

/**
 * 目标:学会创建File对象定位操作系统文件(文件、文件夹)
 */
public class FileDemo {
    public static void main(String[] args) {

        //1.创建File对象(指定了文件路径)
        //路径写法:
        //C:/Users/shouyeren/Pictures/Saved Pictures/1.jpg
        //C:\\Users\\shouyeren\\Pictures\\Saved Pictures\\1.jpg
        //File.separator文件路径分割符
        //File file = new File("C:\\Users\\shouyeren\\Pictures\\Saved Pictures\\1.jpg");
        File file = new File("C:/Users/shouyeren/Pictures/Saved Pictures/1.jpg");
        long size = file.length();//文件的字节大小
        System.out.println(size);//41084

        //2.File创建对象支持绝对路径和相对路径


        //File file1 = new File("E:\\Workspace\\gitee\\JavaSE\\AdvancedStage\\src\\data.txt");绝对路径
        //相对路径:一般定位模块中的文件
        File file1 = new File("src/data.txt");
        long size1 = file1.length();
        System.out.println(size1);

        //3.File创建对象可以是文件也可以是文件夹
        File file2 = new File("D:\\software");
        //判断该文件夹是否存在
        System.out.println(file2.exists());
    }

}

File类的常用API

File类的判断文件类型、获取信息功能

方法名称 说明
public boolean isFile() 测试此抽象路径名表示的File是否为文件
public boolean isDirectory() 测试此抽象路径名表示的File是否为文件夹
public boolean exists() 测试此抽象路径名表示的File是否存在
public String getAbsolutePath() 返回此抽象路径名的绝对路径名字字符串
public String getPath() 将此抽象路径名转换为路径名字字符串
public String getName() 返回由此抽象路径名表示的文件或文件夹的名称
public long lastModified() 返回文件最后修改的时间毫秒值
package com.shouyeren.oop.api.File_api;

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

/**
 * 测试File类中的一些常用API
 */
public class FileDemo2 {
    public static void main(String[] args) {
        //使用绝对路径的方式创建一个File对象
        File file = new File("C:/Users/shouyeren/Pictures/Saved Pictures/1.jpg");
        //1.获取它的绝对路径
        System.out.println(file.getAbsoluteFile());
        //2.获取文件对象定义时的路径
        System.out.println(file.getPath());
        //3.获取文件名称
        System.out.println(file.getName());
        //4.获取文件大小  字节大小
        System.out.println(file.length());
        //5.获取文件的最后修改时间 毫秒值
        System.out.println("最后修改时间:" + new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(file.lastModified()));
        //6.判断是文件还是文件夹
        System.out.println(file.isFile());
        System.out.println(file.isDirectory());
        System.out.println("------------------------------------------------------");
        //使用相对路径的方式创建一个File对象
        File file1 = new File("src/data.txt");
        //1.获取它的绝对路径
        System.out.println(file1.getAbsoluteFile());
        //2.获取文件对象定义时的路径
        System.out.println(file1.getPath());
        //3.获取文件名称
        System.out.println(file1.getName());
        //4.获取文件大小  字节大小
        System.out.println(file1.length());
        //5.获取文件的最后修改时间 毫秒值
        System.out.println("最后修改时间:" + new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(file1.lastModified()));
        //6.判断是文件还是文件夹
        System.out.println(file1.isFile());
        System.out.println(file1.isDirectory());

    }
}

File类创建文件、删除文件的功能

方法名称 说明
public boolean createNewFile() 创建一个新的空文件
public boolean mkdir() 只能创建一级文件
public boolean mkdirs() 可以创建多级文件
public boolean delete() 删除由此抽象路径名表示的文件或空文件夹

delete方法直接删除,不进入回收站;如果删除的是一个文件,且文件没有被占用则直接删除。

File类的遍历功能

方法名称 说明
public String list() 获取当前目录下的所有”一级文件名称“到一个字符串数组去返回
public File[] listFiles() 获取当前目录下所有的”一级文件对象“到一个文件对象数组中去返回(这个方法比较常用)
  • 当调用者不存在时,返回null
  • 当调用者是一个文件时,返回null
  • 当调用者是一个空文件夹时,返回一个长度为0的数组
  • 当调用者是一个有内容的文件夹时,将里面所有文件和文件夹的路径放在Flie数组中返回
  • 当调用者是一个有隐藏文件的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回,包含隐藏内容

算法对程序员来说及其重要,语言和开发平台不断变化,但是万变不离其宗的是那些算法和理论,刷算法最最最直白的原因就是找一个好的工作,那刷题一定是必不可少的
现在算法刷题平台还是蛮多的,给大家介绍一个我认为与大厂关联最深的平台——牛客网 跳转链接

在这里插入图片描述


感觉不错的话,动手点个赞吧!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/125475.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!