1、一等公民文件

对的,在linux下面文件是一等公民,所有的资源都是以文件的形式来区分的。扇区,逻辑块,页之类的底层结构我们就不讲了。我们先考虑一下一个文件到底应该包含哪些内容。除了文件本身的数据之外,还有很多元数据的东西,比如文件权限,所有者,group,创建时间等信息。

在linux系统中,这两个部分是分开存储的。存放数据本身的叫做block,存放元数据的叫做inode。inode中存储了block的地址,可以通过inode找到文件实际数据存储的block地址,从而进行文件访问。考虑一下大文件可能占用很多个block,所以一个inode中可以存储多个block的地址,而一个文件通常来说使用一个inode就够了。

3、JavaIO之:目录还是文件 - 图1

2、目录的基本操作

因为在java中目录和文件是公用File这个类的,所以File的基本操作目录它全都会。
基本上,目录和文件相比要多注意下面三类方法:

  1. public boolean isDirectory()
  2. public File[] listFiles()
  3. public boolean mkdir()

为什么说是三类呢?因为还有几个和他们比较接近的方法,这里就不一一列举了。

isDirectory判断该文件是不是目录。listFiles列出该目录下面的所有文件。mkdir创建一个文件目录。

目录的进阶操作