javaEE初阶 — 认识文件

认识文件


文件分为 狭义广义 两种
狭义的文件:指的是硬盘上的 文件目录

广义的文件:

泛指计算机中很多的软硬件资源。操作系统,会把很多个硬件设备和软件资源抽象成了文件。
按照文件的方式来统一管理。

我们现在只讨论狭义的文件。



文件除了有数据内容之外,还有一部分信息。
例如 文件名、文件类型、文件大小 等并不作为文件的数据而存在,我们把这部分信息可以视为文件的元信息。

1. 树型结构组织和目录


随着文件越来越多,对文件的系统管理也被提上了日程,如何进行文件的组织呢?
一种合乎自然的想法出现了,就是按照层级结构进行组织 —— 也就是我们数据结构中学习过的树形结构

一种专门用来存放管理信息的特殊文件诞生了,也就是我们平时所谓文件夹(folder) 或者目录(directory) 的概念。






文件夹 和 目录 中保存的其实就是之前提到的关于文件的元信息。
通过一个个文件夹,可以将文件组织起来,更方便的使用它。

2. 文件路径(Path)


之前写的代码主要是靠变量来存储数据的,而变量是存储在内存中的。
现在的文件则是在硬盘上。

每个文件在硬盘上都是有一个具体的 “路径”



上述图片的路径就是 d:/javaEE.jpg (在 windows 上也可以写作 d:\javaEE.jpg

表示一个文件的具体位置路径,就可以使用 / 来分割不同的目录级别。
可以表示为:



d 表示的是盘符
c、d、e 这样的盘符是通过 “硬盘分区” 来的。
每个盘符可以是一个单独个硬盘,也可以是若干个盘符对应一个硬盘。

2.1 绝对路径


从树型结构的角度来看,树中的每个结点都可以被一条从根开始,一直到达的结点的路径所描
述,而这种描述方式就被称为文件的绝对路径。

比如:以 c:d:盘符开头的文件的路径。



上述就是一个 绝对路径

2.2 相对路径


除了可以从根开始进行路径的描述,我们可以从任意结点出发,进行路径的描述,而这种描述方式就被
称为相对路径。

简答理解就是以当前所在目录为基准,以 . 或者 . . 开头(. 有时候可以省略),找到指定的路径。

当前所在目录 称为 工作目录 ,每个程序运行的时候,都有一个工作目录。
(在控制台里通过命令操作的时候,是特别明显的;后来进化到图形化界面了,工作目录就不那么明显了。)




默认工作路径是这个,但是这个工作路径是可以更改的。



举个例子:


假设当前的工作目录是 d:/Gitee ,如果要定位到 javaCode 这个目录就可以表示成 ./javaCode
(./就表示当前的目录)

如果要定位到 “码云工具” 就表示成 ./码云工具


如果要定位到 javaCode 里面的 data-structure,就表示成 ./javaCode/data-structure


如果工作目录有不同,定位到同一个文件的相对路径的写法是不同的。

同样是定位到 javaCode 这里。

  • 如果工作目录是 d:/,相对路径就写作 ./Gitee/javaCode
  • 如果工作目录是 d:/Gitee,相对路径就写作 ./javaCode
  • 如果工作目录是 d:/Gitee/码云工具,相对路径就写作 . ./javaCode
    (. . 表示当前目录的上级目录)
  • 如果工作目录是 d:/Gitee/码云工具/c-language-training-program,相对路径就是 …/…/javaCode

IDEA 的工作路径默认就是当前项目的所在目录。


如果代码中写了一些相对代码的路径,工作路径就是以上述路径为基准。

3. 文件的类型


像 word、exe、图片、视频、音频、源代码、动态库… 这些不同的文件,整体可以归纳为两类:

  • 文本文件(存的是文本,字符串)
    这个文本里存的数据,一定是合法的字符,都是在你指定字符编码的码表之内的数据。
  • 二级制文件(存的是二进制数据,不一定是字符串)
    没有任何限制可以存任何你想要的数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

与大师约会

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值