java的File

news2024/11/19 15:30:56

一、File
(一)新建File对象
File对象表示一个路径,可以是文件路径,也可以是文件夹路径;这个路径可以是存在的,也可以是不存在的。
File类常见的构造方法:
在这里插入图片描述
例如:
在这里插入图片描述
注意:因为字符串中的\表示转义字符,所以表示路径时要用两个\即\。在windows系统中路径使用\,在linux系统中路径使用/。
可以看出,new File()只是新建了一个file对象,还没有对文件进行操作(没有新建文件)。打印File对象的结果是打印文件路径。
再如:
在这里插入图片描述
在这里插入图片描述
(二)File里常见的成员方法
1.第一类:判断和获取相关的方法
在这里插入图片描述
例如:
当前文件夹下的内容为
在这里插入图片描述
在这里插入图片描述
添加a.txt文件:
在这里插入图片描述
在这里插入图片描述
查看a.txt大小:
在这里插入图片描述
在这里插入图片描述
注意:length()方法只能获取文件的大小,若参数是文件夹则无法获取文件夹的大小,返回值为0或4096(不同操作系统下不一样)无意义。
在这里插入图片描述
获取文件名(带后缀)或文件夹名:
在这里插入图片描述
返回文件的最后修改事件(毫秒值):
在这里插入图片描述
2.第二类:创建与删除相关的方法
在这里插入图片描述
注意:delete方法默认只能删除文件与空文件夹,delete方法直接删除不走回收站。
例如,创建新的空的文件:
在这里插入图片描述
在这里插入图片描述
注意:如果当前的路径表示的文件已经存在,则createNewFile()返回false,创建不成功;如果父级路径不存在,则程序报错;createNewFile()传概念的一定是文件,若是没写文件后缀名则创建无后缀名的文件。
再例如,新建目录:
在这里插入图片描述
创建多级文件夹:
在这里插入图片描述
删除文件或空文件夹:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.第三类:获取并遍历
在这里插入图片描述
例如:
在这里插入图片描述
注意,对于listFiles()方法:
在这里插入图片描述
其他获取并遍历的方法:
在这里插入图片描述
例如,listRoots()获取系统中所有盘符:
在这里插入图片描述
无参list()获取当前路径下所有文件的名字:
在这里插入图片描述
有参list()获取指定目录下符合条件所有文件的文件名:
在这里插入图片描述
实参为FilenameFilter的匿名内部类,方法accept()的第一个参数dir表示调用list()方法的File对象,第二个表示dir指定目录下的每一个文件或文件夹的路径,方法返回值为true表示获取该文件到数组中,为false则不获取该文件到数组中。
在这里插入图片描述

在这里插入图片描述
使用listFiles()返回当前文件夹下符合条件的所有文件,注意返回值的数组类型为File:
在这里插入图片描述
匿名内部类中的accept()方法与list()方法相同。注意,上图中的accept()参数是File对象中每一个文件的路径。

二、IO流
IO流是存储到盘符和从盘符读取数据的解决方案。File类只能对文件本身进行操作,不能读写文件里面存储的数据。IO流用于读写文件中的数据。
IO流操作文件类型包括字节流和字符流。字节流可以操作所有类型的文件,字符流只能操作纯文本文件。
纯文本文件是能用windows记事本打开且能读懂的文件(例如.txt文件,.md文件)。
在这里插入图片描述
抽象类InputStream、OutputStream、Reader和Writer有不同的实现类。

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

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

相关文章

母线差动保护(一)

与其他的主设备保护相比,母线保护的要求更为苛刻。当变电站母线发生故障时,如不及时切除故障,将会损坏众多电力设备,破坏系统的稳定性,甚至导致电力系统瓦解。如果母线保护拒动,也会造成大面积的停电。因此…

微服务外网部署灵活配置方案(不改代码适配apm和日志中心)

1.综述 之前微服务在进行部署时,有关日志中心和apm相关的配置都是放在代码相应的配置文件中的。 日志中心: /src/main/resources/logback-spring.xml /PIPELINE/docker/flume/hosts apm: /PIPELINE/docker/apm/apm_agent_dev.config /PIPELINE/docker/apm/ap…

TensorFlowLite 声音识别

开发 添加tensorflow的核心依赖 implementation org.tensorflow:tensorflow-lite-task-audio:0.4.0将训练模型放到main/assets文件夹下 在build.gradle中配置 因为打包时tflite文件可能会被压缩,所以需要配置如下 buildFeatures {viewBinding true}androidResources {noComp…

2023 开放原子全球开源峰会高峰论坛成功举办

6 月 11 日,以 “开源赋能,普惠未来” 为主题的 2023 开放原子全球开源峰会高峰论坛在北京成功举办。工业和信息化部相关司局、北京市经济和信息化局、北京经济技术开发区管理委员会相关领导出席并致辞。 北京市经济和信息化局副局长王磊在致辞中表示&am…

4、5类LSA案例

拓扑 需求 实现PC1和PC3互联互通 配置步骤 1)配置接口信息 - 配置PC的IP地址 - 配置路由器的接口 2)配置OSPF单区域 - 创建ospf进程,定义router-id - 指定相应区域 - 宣告网段进入ospf 3)配置OSPF多区域 4) R6配置去往PC3的静…

Matlab论文插图绘制模板第103期—分组散点图

在之前的文章中,分享了Matlab散点图的绘制模板: 进一步,再来分享一下分组散点图的绘制模板。 先来看一下成品效果: 特别提示:本期内容『数据代码』已上传资源群中,加群的朋友请自行下载。有需要的朋友可以…

【裸机开发】按键输入实验

目录 一、硬件原理分析 二、寄存器分析 1、时钟源初始化 2、设置 IO 复用 3、初始化 IO 复用引脚(设置电气属性) 4、初始化GPIO 三、汇编代码(start.s) 四、公共头文件(imx6u.h) 四、C 代码编写 …

【6.13 代随_56day】 两个字符串的删除操作、编辑距离

两个字符串的删除操作、编辑距离 两个字符串的删除操作1.方法图解步骤代码 编辑距离1.方法图解步骤代码 两个字符串的删除操作 力扣连接:583. 两个字符串的删除操作(中等) 1.方法 确定递推公式 当word1[i - 1] 与 word2[j - 1]相同的时候 …

STL之list

目录 list模拟实现一. list的基本框架二. list_node类1.构造函数2.其他函数 三. 迭代器(iterator)1.结构2. 构造函数3. 运算符重载operator-> 四.反向迭代器1.结构2.构造函数3.运算符重载 五. list常用方法及实现1. 默认构造函数a.empty_init 2.迭代器…

8. WebGPU 平移变换

我们将开始编写与顶点缓冲区文章中的示例类似的代码,但这次将绘制单个 F 而不是一堆圆,并使用索引缓冲区来保持数据更小。 让我们在像素空间而不是裁剪空间中工作,就像 Canvas 2D API 我们将制作一个 F,将从 6 个三角形构建它 …

啥?PCB拼版对SMT组装有影响!

PCB为什么要拼版? 拼版主要是为了满足生产的需求,有些PCB板太小,不满足做夹具的要求,所以需要拼在一起进行生产。 拼版也可以提高SMT贴片的焊接效率,如只需要过一次SMT,即可完成多块PCB的焊接。 同时也可…

你知道ai绘画工具都有哪些吗?ai画图的软件分享给你

大家好!你有没有想过,如果我们能有一种神奇的工具,可以帮助我们实现想象中的绘画作品,该有多好呢?现在,随着人工智能的发展,我们可以借助ai绘画工具来探索艺术的奇妙世界了!不过你是…

又双叕搞事?我拿着这份“满级”的JVM笔记,拼进了阿里

JVM JVM,一个熟悉又陌生的名词,从认识Java的第一天起,我们就会听到这个名字,在参加工作的前一两年,面试的时候还会经常被问到JDK,JRE,JVM这三者的区别。 JVM(Java Virtual Machine…

汽车IVI中控开发中视频相关的一些知识点

前言: 视频最早的渊源来源于电视。做汽车仪表/IVI中控,尤其是IVI信息娱乐部分,都要涉及到视频这个知识点,各种概念很多,首先需要明确一条主线,那就是SDTV标清电视->HDTV高清电视->UHDTV超高清电视的一个发展脉络,BT601/656是SDTV标清电视接口,BT1120则对应HDTV高…

ShardingSphere

一、基本概念 1、什么是ShardingSphere 1、一套开源的分布式数据库中间件解决方案 2、有三个产品:Sharding-JDBC和Sharding-Proxy、Sharding-Sidecar 3、定位为关系型数据库中间件,合理在分布式环境下使用关系型数据库操作 2、分库分表 1什么是分库…

文物和古建筑防雷综合解决方案

文物和古建筑作为珍贵的历史遗产,需要受到专业的防雷保护,以保持其完整性和安全性。本文将介绍详细的文物和古建筑防雷方案和措施,包括避雷针安装、接地系统建设、监测技术和定期维护等。 引言: 文物和古建筑承载着珍贵的历史记忆…

防雷抗浪涌插排插座推荐,同为科技(TOWE)防雷桌面PDU安全可靠

同为科技TOWE双排防雷抗浪涌桌面PDU插座 随着夏天天气越来越热,强对流天气增多,雷雨天气频发。在雷电季节,通常影响家用电器安全的主要原因是由于雷电感应的侵入,特别是对绝缘强度低、过电压耐受力差的微电子产品影响甚大。而所谓…

JVM笔记(二)

JVM内存管理 在之前,我们了解了JVM的大致运作原理以及相关特性,这一章,我们首先会从内存管理说起。 在传统的C/C开发中,我们经常通过使用申请内存的方式来创建对象或是存放某些数据,但是这样也带来了一些额外的问题&…

一次XxlJob调度任务重复执行的问题排查

目录 东老师的问题1. 为什么会重复执行2. 为什么时间间隔改为1min就不会重复执行** 开始排查先看下任务配置 任务第一次执行排查执行类 》JobThreadJobThread的核心逻辑1.循环消费 一个阻塞队列 不断的去消费队列中TriggerParam 这个参数2.看下TriggerParam,这正是我…

硬件学习 软件 Cadence day10 查看网表导入进度,钻孔保护等一些操作

1. 查看网表导入状态。 2. 放置元器件 之前 画板框 3.放置元器件 4.把导入的DXF 文件变成板框 1.首先导入DXF文件 2. 点击按钮 3. 鼠标点击需要 调整为板框的地方 3.1 其中包括边框 3.2 固定的钻孔 5.给钻孔打上保护(防止布线的时候区域错误,在固定的时…