File类

news2024/9/25 11:17:04

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

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

这里写目录标题

  • File类
    • File类概述
      • File类创建对象
    • File类的常用API
      • File类的判断文件类型、获取信息功能
      • File类创建文件、删除文件的功能
      • File类的遍历功能

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数组中返回,包含隐藏内容

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

在这里插入图片描述

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/340406.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2. SpringMVC 请求与响应

文章目录1. 请求映射路径2. 请求参数2.1 get 请求发送普通参数2.2 post 请求发送普通参数2.3 五种类型的参数传递2.4.1 普通参数2.4.2 POJO 数据类型2.4.3 嵌套 POJO 类型参数2.4.4 数组类型参数2.4.5 集合类型参数3. json 数据传输参数(重点)3.1 传输 j…

C语言(C预编译指令)

目录 1.undef 2.条件编译#ifdef,#else和#endif 3.#ifndef 4.#if和#elif 5.预定义宏 6.#line和#error 7.#pragma 1.undef #undef指令用于取消已定义的#define指令 #define LIMIT 400 #undef LIMIT 如果想使用一个名称但又不确定之前是否已经用过,为了安全起…

Python中的进程线程

文章目录前言多进程与多线程基本概念多进程multiprocessing 类对象进程池subprocess模块进程间通信多线程threading实现线程操作线程共享所有变量线程锁参考资料前言 又花了点时间学习了一下Python中的多线程与多进程的知识点,梳理一下供复习参考 多进程与多线程 …

JUC并发编程与源码分析

一、本课程前置知识及要求说明 二、线程基础知识复习 三、CompletableFuture 四、说说Java"锁"事 8锁案例原理解释: 五、LockSupport与线程中断 六、 Java内存模型之JMM 七、volatile与JMM 八、CAS 九、原子操作类之18罗汉增强 十、聊聊ThreadLocal 十一、Java对…

离线数据仓库

1 数据仓库建模 1.1 建模工具 PowerDesigner/SQLYog/EZDML… 1.2 ODS层 (1)保持数据原貌不做任何修改,起到备份数据的作用。 (2)数据采用压缩,减少磁盘存储空间(例如:压缩采用LZO&…

seata源码-全局事务回滚服务端源码

这篇博客来记录在发起全局事务回滚时,服务端接收到netty请求是如何处理的 1. 发起全局事务回滚请求 在前面的博客中,有说到过,事务发起者在发现分支事务执行异常之后,会提交全局事务回滚的请求到netty服务端,这里是发…

Python 解决dilb和face_recognition第三方包安装失败

目录 dilb和face_recognition第三方包安装失败 亲测有效的解决方法:whl安装方式 dilb和face_recognition第三方包安装失败 场景复现:因为需要用到dlibface_recognition,基于OpenCV做一些人脸识别的项目,在Pycharm中进行pip清华…

图解LeetCode——剑指 Offer 24. 反转链表

一、题目 定义一个函数&#xff0c;输入一个链表的头节点&#xff0c;反转该链表并输出反转后链表的头节点。 二、示例 示例: 【输入】 1->2->3->4->5->NULL 【输出】 5->4->3->2->1->NULL 限制&#xff1a; 0 < 节点个数 < 5000 三、…

Linux | Linux卸载和安装MySQL(Ubuntu版)

最近又来到了Linux学习了&#xff0c;原因是要接触云服务器相关知识&#xff0c; 所以博主整理了一些关于Linux的知识&#xff0c; 欢迎各位朋友点赞收藏&#xff0c;天天开心丫&#xff0c;快乐写代码&#xff01; Linux系列文章请戳 Linux教程专栏 目录 一、卸载MySQL 1…

Angular4 中 ckeditor5 插件的使用

Angular4 中 ckeditor5 插件的使用 0 环境、新建项目 环境&#xff1a; Windows10Angular/cli1.4.10&#xff08;安装 Angular 的过程略过&#xff0c;Angular4 版本比较古老&#xff0c;这也导致项目安装插件及其他操作比较麻烦&#xff09; 1. ckeditor5 官方用法 基础用…

邂逅TypeScript基础语法

文章目录p26认识TypeScriptTypeScript的编译环境ts初体验ts环境搭建变量的定义p27number类型booleanArrayObjectSymbolanyunknownvoidnevertuple联合ts中文文档学习-非官方网站 p26 认识TypeScript TypeScript的编译环境 ts初体验 ts环境搭建 第二种方式 webpack.config…

论文阅读_图像生成文本_CLIP

name_en: Learning Transferable Visual Models From Natural Language Supervision name_ch: 从自然语言监督中学习可迁移的视觉模型 paper_addr: http://arxiv.org/abs/2103.00020 doi: 10.48550/arXiv.2103.00020 date_read: 2023-02-09 date_publish: 2021-02-26 tags: [‘…

【1138. 字母板上的路径】

来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 描述&#xff1a; 我们从一块字母板上的位置 (0, 0) 出发&#xff0c;该坐标对应的字符为 board[0][0]。 在本题里&#xff0c;字母板为 board ["abcde", "fghij", "klmno", "pq…

文本比对工具【UltraCompare附安装包】Mac和Windows下载使用

UltraCompare 强大的文件&#xff0c;文件夹&#xff0c;PDF, Word和Excel比较。文件夹同步&#xff0c;二进制/十六进制比较。下载一个免费的全功能试用版&#xff0c;看看为什么。适用于Windows、Mac和Linux。 文章目录软件功能1、文本比较2、快速二进制比较3、智慧二进制比较…

Python快速上手系列--类--详解篇

本章是自动化测试的真正开始&#xff0c;因为在后续的过程中&#xff0c;你会接触到unittest框架&#xff0c;pytest框架&#xff0c;而不仅仅只是写一个函数selenium脚本这么简单了。1、创建类1.1、了解类我们首先了解一下&#xff0c;为什么要使用类&#xff0c;类可以拿来干…

2023同等学力申请硕士计算机综合国考

同等学力国考报名要开始了 2023年2月15日&#xff0c;中国教育考试网和“全国同等学力人员申请硕士学位管理工作信息平台”&#xff08;https://tdxl.chsi.com.cn&#xff0c;联系服务电话&#xff1a;010-67410388&#xff09;公布报名工作通知。考生须按照通知要求进行注册或…

Win11下Linux子系统迁移方法及报错解决

Win11 将Linux子系统从C盘迁移到其他盘Win11下Linux子系统迁移方法及报错解决1、下载LxRunOffline2、ERROR&#xff1a;directory is not empty 报错解决参考链接Win11下Linux子系统迁移方法及报错解决 C盘满了&#xff0c;Ubuntu子系统占了100多G怎么办&#xff1f;直接将子系…

相机出图画面一半清晰,一半模糊的原因是什么?

1、问题背景&#xff1a;在做项目的过程中&#xff0c;有遇到过几次&#xff0c;出图后画面是一半清晰&#xff0c;一半模糊的现象&#xff0c;再重新对焦也是一样。但换了个镜头后就好了&#xff0c;这应该是镜头的质量问题&#xff0c;但导致镜头出现这种问题的具体原因是什么…

【2023unity游戏制作-mango的冒险】-3.基础动作和动画API实现

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 秩沅 原创 收录于专栏&#xff1a;unity游戏制作 ⭐mango的基础动作动画的添加⭐ 文章目录⭐mango的基础动作动画的添加⭐&#x1f…

本周大新闻|传微软解散工业元宇宙团队,MIT研发垂直堆叠全彩Micro LED

本周大新闻&#xff0c;AR方面&#xff0c;消息称微软解散工业元宇宙团队&#xff1b;德国AR公司Gixel GmbH亮相&#xff1b;Brilliant推出单片式附加形态AR眼镜&#xff1b;MIT研发垂直堆叠全彩Micro LED&#xff1b;谷歌XR串流正式上线。VR方面&#xff0c;索尼发布了PS VR2的…