文件File类的学习

server/2024/11/15 6:14:49/

File类

  • File类
    • 创建File实例
    • 创建文件
    • 删除文件
    • 创建目录
  • Reader
  • 小结

File类

java,通过java.io.File类来对一个文件进行抽象的描述.
下面我们来看看File类的构造方法:
签名说明
File(File parent, String child)根据父目录+孩子文件路径,创建出一个新的File实例
File(String pathname)根据文件路径创建一个新的File实例,路径可以是绝对路径和相对路径
File(String parent, String child)根据父文件路径+孩子文件路径,创建一个新的File实例

下面我将通过一些方法熟悉一下文件操作:

创建File实例

java">public static void main(String[] args) throws IOException {// 使用绝对路径创建一个File实例File file = new File("d:/test.txt");// 查看父亲目录System.out.println(file.getParent());;// 查看文件名System.out.println(file.getName());// 当前文件路径System.out.println(file.getPath());// 绝对路径System.out.println(file.getAbsolutePath());// 对绝对路径进行修饰System.out.println(file.getCanonicalPath());}// d:\//test.txt//d:\test.txt//d:\test.txt//D:\test.txt

以上操作并没有真正创建文件,我们要通过调用createNewFile方法创建文件

创建文件

java">public static void main(String[] args) throws IOException {File file = new File("d:/test.txt");// 创建一个文件file.createNewFile();// 文件是否存在System.out.println(file.exists());// 是否是文件System.out.println(file.isFile());// 是否是目录System.out.println(file.isDirectory());}// 我们已经在d:/下创建了一个文件test.txt.// true// true// false

下面我们进行文件的删除操作, 有立即删除, 和在程序结束后删除两种情况:

删除文件

java">public static void main(String[] args) throws InterruptedException {File file = new File("d:/test.txt");// 直接删除//file.delete();// 等待程序退出后删除file.deleteOnExit();Thread.sleep(5000);}

创建目录

java">public static void main(String[] args) {// 以相对路径创建目录File file = new File("./testDir");// 创建目录file.mkdir();// 创建多级目录//file.mkdirs();}

在这里插入图片描述
可以看到, 当前创建了一个testDir目录.

Reader

java">public static void main(String[] args) throws IOException {// 构造方法: 1. 绝对路径 2. 相对路径  3.已经构造好的file对象// 只要try(){}执行完了,就会自动调用close方法try(Reader reader = new FileReader("./testDir/test.txt")) {while (true) {char[] buf = new char[1024];// 实际读到的字符个数int n = reader.read(buf);// n == -1: 表示读到末尾了if(n == -1) {break;}for (int i = 0; i < n; i++) {System.out.print(buf[i] + "");}}}}

在这里插入图片描述

小结

上述我们基于File类进行文件系统的操作, 在下篇博客将会使用文件流的方式操作文件系统,
希望有收获的小伙伴多多支持.


http://www.ppmy.cn/server/11470.html

相关文章

BBS前后端混合项目--01

总路由 # urls.py """BBS1 URL ConfigurationThe urlpatterns list routes URLs to views. For more information please see:https://docs.djangoproject.com/en/3.2/topics/http/urls/ Examples: Function views1. Add an import: from my_app import views2…

每日一题:Spring MVC 的执行流程是什么❓

1、用户通过浏览器向服务器发送服务请求&#xff0c;请求会被 Spring MVC 的前端控制器 DispatcherServlet 拦截。 2、DsipatcherServlet 拦截请求后&#xff0c;会调用 HandlerMapping 处理器处理映射。 3、处理器根据URL找到具体的处理器&#xff0c;生成处理器对象及处理器…

【C++语言】字符串String练习题

题目连接&#xff1a; 仅仅反转字母 1.仅仅反转字母 给你一个字符串 s &#xff0c;根据下述规则反转字符串&#xff1a; 所有非英文字母保留在原有位置。所有英文字母&#xff08;小写或大写&#xff09;位置反转。 返回反转后的 s 。 示例 1&#xff1a; 输入&#xff1a;s …

Power BI 如何创建页面导航器?(添加目录按钮/切换页面按钮)

Power BI 中页导航是什么&#xff1f; 在Power BI中&#xff0c;页导航&#xff08;Page Navigation&#xff09;是指在报告中创建多个页面&#xff08;页&#xff09;&#xff0c;然后允许用户在这些页面之间进行导航的功能。 如下图所示&#xff0c;页导航的选项和报告中的…

Docker搭建代码托管Gitlab

文章目录 一、简介二、Docker部署三、管理员使用四、用户使用五、用户客户端 一、简介 GitLab是一个基于Git的代码托管和协作平台&#xff0c;类似于GitHub。 它提供了一个完整的工具集&#xff0c;包括代码仓库管理、问题跟踪、CI/CD集成、代码审查等功能。 GitLab的开源版本…

性能优化---回流与重绘

1、什么是回流&#xff08;重排&#xff09;和重绘 回流就是当渲染树中部分或者全部元素的尺寸、结构或者属性发生变化时&#xff0c;浏览器会重新渲染部分或者全部文档的过程。 重绘就是当页面中某些元素的样式发生变化&#xff0c;但是不会影响其在文档流中的位置时&#xff…

基于Vue+ElementPlus自定义带历史记录的搜索框组件

前言 基于Vue2.5ElementPlus实现的一个自定义带历史记录的搜索框组件 效果如图&#xff1a; 基本样式&#xff1a; 获取焦点后&#xff1a; 这里的历史记录默认最大存储10条&#xff0c;同时右侧的清空按钮可以清空所有历史记录。 同时搜索记录也支持点击搜索&#xff0c;按…

YOLOv9训练结果分析->mAP、Precision、Recall、FPS、Confienc、混淆矩阵分析

简介 这篇博客&#xff0c;主要给大家讲解我们在训练yolov9时生成的结果文件中各个图片及其中指标的含义&#xff0c;帮助大家更深入的理解&#xff0c;以及我们在评估模型时和发表论文时主要关注的参数有那些。本文通过举例训练过程中的某一时间的结果来帮助大家理解&#xf…