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

hi~好久不见!
你们的小猪回来了!
在这里插入图片描述
前段时间有些事情,没怎么写博客,这期博客给你们讲讲文件操作。

前言

如果有哪里不够完善或者写错了,请大佬们帮忙指正,谢谢!
在这里插入图片描述

一,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 对象,并不
代表真实存在该文件。
在这里插入图片描述
我们可以如上图一样理解IO流,其中有三个比较重要的类,分别是InputStream、FileInputStream和OutputStream。

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

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

三,文件操作

1,认识文件

针对硬盘这种持久化存储的I/O设备,当我们想要进行数据保存时,往往不是保存成一个整体,而是独立成一个个的单位进行保存,这个独立的单位就被抽象成文件的概念。
在这里插入图片描述
文件除了有数据内容之外,还有一部分信息,例如文件名、文件类型、文件大小等并不作为文件的数据而存在,我们把这部分信息可以视为文件的元信息。
在这里插入图片描述
在这里插入图片描述

2,树型结构和目录

我们通过层级结构来管理文件------数据结构中的树型结构,也就是我们所说的文件夹和目录。
在这里插入图片描述

3,文件路径

文件路径包括绝对路径和相对路径,拿树型结构来说,从一个树型结构的根节点开始,到目标节点,此路径为绝对路径;从任意节点出发到目标节点,此路径为相对路径。
绝对路径:
在这里插入图片描述
相对路径:

在这里插入图片描述
文件由于被操作系统进行了管理,所以根据不同的用户,会赋予用户不同的对待该文件的权限,一般地可以认为有可读、可写、可执行权限。

以上就是文件操作的基本内容,希望对你有帮助!
在这里插入图片描述
下期再见了~

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

爱撸猫的程序媛

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

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

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

打赏作者

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

抵扣说明:

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

余额充值