目录
[🚩 文件分类](#🚩 文件分类)
[🎍Java 中操作文件](#🎍Java 中操作文件)
[🚩 File 概述:](#🚩 File 概述:)
🌴认识文件
什么叫文件IO?
Input 输入,Output 输出
我们先来认识狭义上的文件(file)。针对硬盘这种持久化存储的I/O设备,当我们想要进行数据保存时,往往不是保存成一个整体,而是独立成一个个的单位进行保存(也就是平时保存在硬盘上的这些文件),这个独立的单位就被抽象成文件的概念,就类似办公桌上的一份份真实的文件一般。
那么上面的文件夹是否是文件?
- 文件夹也是一种文件,称为"目录文件",也是保存在硬盘上的
🚩树型结构组织和目录
同时,随着文件越来越多,对文件的系统管理也被提上了日程,如何进行文件的组织呢,一种合乎自然的想法出现了,就是按照层级结构进行组织 ------ 也就是我们数据结构中学习过的树形结构。这样,一种专门用来存放管理信息的特殊文件诞生了,也就是我们平时所谓文件夹(folder)或者目录(directory)的概念。
🚩文件路径(Path)
由于文件非常多,目录也非常多,目录之间还能嵌套,需要在上述体系中,能够有一种方式标识某个具体的文件,通过这个机制就能具体定位到,找到某个文件。
路径:
从根节点出发,一层一层往下走,最终走到目标文件之后,中间这些目录集合在一起就够成了"路径"
例子:在D盘下呢有一个文件,这个文件怎么找到呢,先找到此电脑->D盘->ph,我们就可以通过d:/ph 就可以找到这个文件了(由于都是在此电脑路径下开始找的,所以此电脑就可以省略了)。
注意:
- 目录与目录之间使用 / 或者 \ 分割,但是仅限于 Windows 上。
上述路径呢,是以盘符开头的路径,我们也称为"绝对路径"。
我们可以从任意结点出发,进行路径的描述,而这种描述方式就被称为相对路径(relative path),相对于当前所在位置为出发点的一条路径。从当前起点出发,我们把起点也称为"工作目录"。
比如:
🚩 文件分类
文件分类的方式有很多种,此处主要讨论一种和编写代码密切相关的。
文本文件 vs 二进制文件
文本数据: 二进制数据:
日常常见的:
🎍Java 中操作文件
针对文件系统进行操作:
Java 中通过 java.io.File 类来对一个文件(包括目录)进行抽象的描述。进一步通过 File 提供的方法就可以文件系统操作了。
🚩 File 概述:
我们先来看看 File 类中的常见属性、构造方法和方法
📌属性
📌构造方法
一般使用第二种,字符串类型的路径,使用绝对路径/相对路径 都是可以的
📌方法
🚩File使用实例代码演示
📌实例一
注意:有 File 对象,并不代表真实存在该文件
也就是说这里的 d:/ph/text.txt 可能根本不存在(当然此路径是存在的)
我们观察输出,发现后面三个差不多都一样,那是因为上述路径是绝对路径。
我们改为相对路径试试:
📌实例二
当前文件的判定
绝对路径:
ph是一个目录
相对路径:
📌实例三
普通文件的创建、删除
代码:创建
运行: 此时就创建出一个文件,IEAD左侧就可以看见了
代码:
直接删除:
运行: 此时文件已经被删除了
进程结束在删除:
输入前: 输入后:此时文档已经被删除了
📌实例四
创建目录
代码:创建一级目录
运行: 创建一级目录:
代码:创建多级目录
运行: 创建多级目录:
📌实例五
文件重命名
代码:
运行之后:
针对文件内容操作下篇在叙述!!!