File类、IO数据流介绍

文章目录

  • 🐒个人主页
  • 🏅JavaSE系列专栏
    • 📖前言:
    • 🎀File类的设计
      • 🪅数据流的流向
    • 🏅对数据操作的类
      • 🧸按单位划分
      • 🧸按封装类型划分
    • 🎀整理File常用方法

🐒个人主页

🏅JavaSE系列专栏

📖前言:

本篇博客主要File类以及数据流的划分

🎀File类的设计

【是java专门对文件、文件夹操作的类】
在 Java 中,File 类是 java.io 包中唯一代表磁盘文件本身的对象。File 类定义了一些与平台无关的方法来操作文件,File类主要用来获取或处理与磁盘文件相关的信息,像文件名、 文件路径、访问权限和修改日期等,还可以浏览子目录层次结构。
File 类表示处理文件和文件系统的相关信息。也就是说,File 类不具有从文件读取信息和向文件写入信息的功能,它仅描述文件本身的属性。

🪅数据流的流向

在这里插入图片描述

🏅对数据操作的类

🧸按单位划分

字节流:每次读取数据时,是以字节为单位传输数据(可以对任何文件操作)
inputStream outputStream基类
字符流:每次读取数据时,是以字符为单位传输数据(只适合纯文本文件)
(Reader 、Writer为字符流基类,通过继承inputstream类,实现一次读取一个字符)

🧸按封装类型划分

节点流:直接对数据进行处理(inputStream 、 outputStream)
处理流:对节点流进行再封装、深加工,可以更加方便的处理数据
(BufferedInputStream 、 BufferedOutputStream 默认缓冲数组大小8KB)
【先把数据存入缓冲数组中,当存满了或自带缓冲数组大于8KB时,会直接调用flushBuffered(),将数组存入并清空缓冲数组】

🎀整理File常用方法

构造方法方法内容介绍
File(File parent, String child)📖【(文件夹对象,“相对路径路径”)】 从父抽象路径名和子路径名字符串创建新的 File实例。
File(String pathname)📖 通过将给定的路径名字符串来创建新的 File实例。
File(String parent, String child)📖 从父路径名字符串和子路径名字符串创建新的 File实例。
常用方法方法内容介绍
boolean canRead()📖【是否可读】
boolean canWrite()📖【是否可写】
boolean createNewFile()📖【创建新文件】
static File createTempFile(String prefix, String suffix)📖【创建临时文件】文件名称:前缀prefix+后缀suffix
static File createTempFile(String prefix, String suffix, File directory)📖【指定目录创建临时文件】在指定的目录中创建一个新的临时文件,使用给定的前缀和后缀字符串生成其名称。
boolean delete()📖【删除文件】、【删除空目录(🎇非空删不掉)】
boolean exists()📖【判断文件或目录是否存在】
File getAbsoluteFile()📖【获取文件的绝对路径】
String getName()📖【获取文件名或目录名】
String getParent()📖【获取上一级目录名】
File getParentFile()📖【获取上一级的路径】
String getPath()📖【获取路径】
int hashCode()📖【计算此抽象路径名的哈希码】
boolean isAbsolute()📖测试这个抽象路径名是否是绝对的
boolean isDirectory()📖【是否为目录】
boolean isFile()📖【是否为文件】
boolean isHidden()📖【是否为隐藏文件】
long``lastModified()📖【返回文件上次修改的最新时间】
long``length()📖【表示文件长度】
String[] list()📖【返回一个目录列表–里面是其子文件、子目录名字符串】⚠不是对象,不能操作。只有该目录内容字符串名字
String[]``list(FilenameFilter filter)📖【加了一个名字过滤器,其余与上面相同】
File[] listFiles()📖【该目录下内容封装成对象放入数组中】,可以对其进行操作,等价于对文件、目录操作
File[]``listFiles(FileFilter filter)📖【加了一个名字过滤器,其余与上面相同】
boolean mkdir()📖【创建文件夹(目录)】
boolean mkdirs()📖【创建多级文件夹(目录)】
boolean renameTo(File dest)📖【对文件或目录重命名】
boolean setReadOnly()📖【设置文件只读】
boolean setReadable(boolean readable)📖【设置文件只读权限】
boolean setReadable(boolean readable, boolean ownerOnly)📖【设置文件只读权限(其他人,本人)】
boolean setWritable(boolean writable)📖【设置文件写入权限】
boolean setWritable(boolean writable, boolean ownerOnly)📖【设置文件写入权限(其他人,本人)】

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

有赞一面:亿级用户DAU日活统计,有几种方案?

说在前面 在40岁老架构师 尼恩的读者社区(50)中,最近有小伙伴拿到了一线互联网企业如极兔、有赞、希音、百度、网易、滴滴的面试资格,遇到一几个很重要的面试题: (1) 亿级用户场景,如何高性能统计日活? (2) 如何实现亿…

智见|中国能建中电工程罗必雄:数能融合为数字中国夯实底座

出品|网易科技《智见访谈》 作者|赵芙瑶 编辑|丁广胜 数字化浪潮的风,吹到了能源结构转型领域。 中国作为全球最大的能源生产国和消费国,正积极推动能源行业的数字化和智能化建设。数字化智能化升级在能源产业中被视为一项重要的战…

lambda处理异常四种方式

最近对接第三方呼叫系统,第三方SDK的所有方法里都有异常抛出,因为用到了lambda,所以异常处理还是很必要的。 本文主要用到了四种解决方案: 直接代码块处理自定义函数式接口,warp静态方法通过Either 类型包装通过Pair 类…

【Android】Exam5 ListView组件简单应用

Exam5 ListView组件简单应用 ListView组件简单应用 Exam5 ListView组件简单应用目的实验内容及实验步骤采用SimpleAdapter自定义Adapter运行及结果:实验总结 目的 掌握常用的UI布局及组件; 掌握使用Intent启动Activity的方法 掌握ListView组件的简单应用…

[离散数学] 函数

文章目录 函数判断函数的条件复合函数复合函数的性质 逆函数 函数 判断函数的条件 dom F A ⇔ \Leftrightarrow ⇔所有x 都有 F&#xff08;x&#xff09;与之对应 有唯一的与其对应 < x , y > ∈ f ∧ < y , z > ∈ f ⇒ y z <x,y>\in f \land <y,z…

无需繁琐手工操作,如何利用Web自动化测试元素定位做到快速高效的测试?

1、什么是Web自动化测试元素定位&#xff1f; 在Web自动化测试中&#xff0c;元素定位是非常重要的环节。因为我们需要找到需要进行操作的页面元素&#xff0c;例如按钮、输入框、下拉菜单等等。元素定位可以帮助我们在自动化测试中对这些元素进行操作&#xff0c;如点击、输入…

生物识别技术能否成为应对安全挑战的绝佳选择?

生物识别技术能否成为应对安全挑战的绝佳选择&#xff1f; 生物识别技术是利用人体固有的生理特征或行为特征来进行身份鉴别的一种技术&#xff0c;如指纹、人脸、声纹、虹膜等。1 生物识别技术具有不可撤销性、高度便利性和较低错误率等优势&#xff0c;在安全领域中也备受瞩目…

React动态路由配置

目录 项目初始化 模块创建 统一导出 全局模块配置选项 核心代码 使用及效果展示 博文适用于react-router v6及以上&#xff0c;其中还有很多值得改进的地方 最近学习react的过程中&#xff0c;思考怎样实现动态路由的配置(最终实现从页面配置最终动态从数据库加载上线模…

Stable Diffusion webui安装使用

参考&#xff1a; https://stability.ai/blog/stable-diffusion-public-release https://github.com/AUTOMATIC1111/stable-diffusion-webui 1、安装&#xff08;6g显存&#xff09; 1、conda创建python 3.10.6环境 conda create -n stable-diffusion pythonpython 3.10.6 也安…

中国南方Oracle用户组沙龙活动:大环境下的Oracle数据库的机遇与挑战

2023年03月12日(周日)在杭州索菲特西湖大酒店 (浙江省杭州市上城区西湖大道333 号)&#xff0c;中国南方Oracle用户组创始人之一&#xff1a;周亮&#xff08;zhou liang&#xff09;组织举办了主题为《大环境下的Oracle数据库的机遇与挑战》活动&#xff0c;大约有50名左右的人…

刷完这个笔记,17K不能再少了....

大家好&#xff0c;最近有不少小伙伴在后台留言&#xff0c;得准备面试了&#xff0c;又不知道从何下手&#xff01;为了帮大家节约时间&#xff0c;特意准备了一份面试相关的资料&#xff0c;内容非常的全面&#xff0c;真的可以好好补一补&#xff0c;希望大家在都能拿到理想…

马赛克处理

去取马赛克的网址&#xff1a; Redact • Photo - Free And Private Image Redaction In The Browser https://redact.photo/ REDACT.PHOTO &#xff08;照片马赛克处理在线工具&#xff09;简介 REDACT.PHOTO是一个照片马赛克处理在线工具&#xff0c;能够帮助我们非常方便…

ChatGPT使用体验

ChatGPT使用体验 前言 介绍ChatGPT 体验ChatGPT 菜谱 编程学习 出行导航 导游攻略 中英翻译 电影推荐 文章总结 总结 前言 最近关于ChatGPT的话题已经火爆了&#xff0c;我也观察和体验了一段时间。平心而论&#xff0c;这东西真的黑科技&#xff0c;大多行业都能通…

Windows10安装二进制Mysql-5.7.41和汉化

1.创建my.ini [mysqld] ##skip-grant-tables1 port 3306 basedirD:/webStudy/mysql-5.7.41 datadirE:/adata/mysqlData max_connections200 character-set-serverutf8 default-storage-engineINNODB sql_modeNO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [mysql] default-char…

论文解读|MetaAI图像分割基础模型SAM——解锁数字大脑“视觉区”

原创 | 文 BFT机器人 内容提要 事件背景: 2023年4月5日&#xff0c;MetaAI研究团队发布论文“分割一切”一《Segment Anything》并在官网发布了图像分割基础模型一Segment Anything Model(SAM)以及图像注释数据集Segment-Anything 1-Billion(SA-1B)。 论文核心观点 : 目…

Simulink 和 Gazebo联合仿真控制机械臂【Matlab R2022a】

逛 B 站&#xff0c;偶然发现一个 up 主上传的视频&#xff0c;可以实现 Simulink 中搭建机器人的控制器设计&#xff0c;对运行在虚拟机中 Gazebo 中的机械臂进行控制&#xff0c;链接&#xff1a;三关节机械臂Gazebo-Simulink联合仿真&#xff0c;这让我很感兴趣&#xff0c;…

60岁的机器视觉工程师,你还在敲代码?不想做机器视觉工程师,还可以做什么?机器视觉工程师职业生命线有多长​?

如果按程序员参加工作时间为22岁计算,平均退役年龄为35岁计算的话,程序员的职业寿命大概为14年。为什么程序员的职业生命线如此短暂呢?大致有以下几点—— 1、编程技术层出不穷,迭代速度非常快,这时候就需要我们不断的学习,不断地保持学习能力,当随着年龄的增长我们的学…

K8S系列之污点和容忍度详细分析

架构图 本篇文档主要介绍污点和容忍度的关系。 污点和容忍度 污点顾名思义就是脏的东西&#xff0c;给节点添加污点来限制pod调度到该节点上&#xff0c;如果pod可以容忍这种污点就可以被调度到有污点的节点上&#xff0c;如果不能容忍就不能被调度到该节点上。 污点作用于节…

Java版本企业电子招采系统源码——信息数智化招采系统

信息数智化招采系统 服务框架&#xff1a;Spring Cloud、Spring Boot2、Mybatis、OAuth2、Security 前端架构&#xff1a;VUE、Uniapp、Layui、Bootstrap、H5、CSS3 涉及技术&#xff1a;Eureka、Config、Zuul、OAuth2、Security、OSS、Turbine、Zipkin、Feign、Monitor、Stre…

Nginx实现负载均衡

张三开发了一个分享文学作品的网站&#xff0c;刚开始入驻的作者不多&#xff0c;可谓是人烟稀少。但入驻的作者们信念坚定&#xff0c;孜孜不倦地更新着自己的作品&#xff0c;功夫不负有心人&#xff0c;作品迎来了爆发式的阅读增长量&#xff0c;终于&#xff0c;大访问量使…