【Java第24期】:IO、存储、硬盘和文件系统的相关知识

hi~好久不见!
你们的小猪回来了!
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第1张图片
前段时间有些事情,没怎么写博客,这期博客给你们讲讲文件操作。

文章目录

  • 前言
  • 一,IO的相关知识
    • 1,IO的基本概念
    • 2,文件操作---IO流
  • 二,存储和硬盘的相关知识
  • 三,文件操作
    • 1,认识文件
    • 2,树型结构和目录
    • 3,文件路径

前言

如果有哪里不够完善或者写错了,请大佬们帮忙指正,谢谢!
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第2张图片

一,IO的相关知识

1,IO的基本概念

IO 就是指“输入和输出”,由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘、网络等就需要IO接口。根据针对的对象不同,IO模式可以分为磁盘IO模型和网络IO模型。
IO操作会涉及到用户空间和内核空间的转换,先来理解以下规则:

1),内存空间分为用户空间和内核空间,也称为用户缓冲区和内核缓冲区;
2),用户的应用程序不能直接操作内核空间,需要将数据从内核空间拷贝到用户空间才能使用;
3),无论是read操作,还是write操作,都只能在内核空间里执行;
4),磁盘IO和网络IO请求加载到内存的数据都是先放在内核空间的;

2,文件操作—IO流

(这里简单总结一下IO流,后几篇博客会详细介绍)
Java 中通过 java.io.File 类来对一个文件(包括目录)进行抽象的描述。注意,有 File 对象,并不
代表真实存在该文件。
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第3张图片
我们可以如上图一样理解IO流,其中有三个比较重要的类,分别是InputStream、FileInputStream和OutputStream。

二,存储和硬盘的相关知识

存储:根据不同的应用环境通过采取合理、安全、有效的方式将数据保存到某些介质上并能保证有效的访问。那什么是文件存储呢?
文件存储(也称为文件级存储或基于文件的存储),数据会以单条信息的形式存储在文件夹中,如果需要访问该数据,可以查找相应的路径。存储在文件中的数据会根据数量有限的元数据来进行整理和检索,这些元数据会告诉计算机文件所在的确切位置。它就像是数据文件的库卡目录。
例子图片:
在这里插入图片描述
硬盘:一般是指电脑硬盘,是计算机的主要存储设备。用来保存文件数据。

三,文件操作

1,认识文件

针对硬盘这种持久化存储的I/O设备,当我们想要进行数据保存时,往往不是保存成一个整体,而是独立成一个个的单位进行保存,这个独立的单位就被抽象成文件的概念。
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第4张图片
文件除了有数据内容之外,还有一部分信息,例如文件名、文件类型、文件大小等并不作为文件的数据而存在,我们把这部分信息可以视为文件的元信息。
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第5张图片
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第6张图片

2,树型结构和目录

我们通过层级结构来管理文件------数据结构中的树型结构,也就是我们所说的文件夹和目录。
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第7张图片

3,文件路径

文件路径包括绝对路径和相对路径,拿树型结构来说,从一个树型结构的根节点开始,到目标节点,此路径为绝对路径;从任意节点出发到目标节点,此路径为相对路径。
绝对路径:
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第8张图片
相对路径:

【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第9张图片
文件由于被操作系统进行了管理,所以根据不同的用户,会赋予用户不同的对待该文件的权限,一般地可以认为有可读、可写、可执行权限。

以上就是文件操作的基本内容,希望对你有帮助!
【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第10张图片
下期再见了~

【Java第24期】:IO、存储、硬盘和文件系统的相关知识_第11张图片

你可能感兴趣的:(Java新手上线,Java基础学习,java,jvm,开发语言)