【软考学习14】绝对路径和相对路径的区别和联系

简介: 【软考学习14】绝对路径和相对路径的区别和联系


本文讲解文件存储中绝对路径和相对路径的区别和联系。简单来讲,绝对路径是把文件所在的完整路径逐一标识出来,相对路径是对某个目录的参考路径,在实战项目的开发中,相对路径会使用的多一些,绝对地址可以用于开发调试环节。


一、文件名的组成

在操作系统中,文件名一般由硬盘号硬盘路径主文件名扩展名构成。

比如我在 D 盘的某个文件夹下新建了一个 helloWorld.java 文件,如下图所示。

那么,这个 helloWorld.java 文件的完整文件名应该是:

D:\test\helloWorld.java

其中,硬盘号是 D:\。

硬盘路径是 test。

主文件名为 helloWorld。

扩展名为 .java。

无论是 Window 系统还是 Linux 系统,都遵循这样的文件命名规范。

理解了文件名的概念后,我们来了解下绝对路径相对路径的区别和联系。


二、绝对路径和相对路径

绝对路径又称完整路径,是从盘符开始的路径,比如 D:/test/helloWorld.java 就是一个绝对路径。

相对路径是从当前目录开始的路径,比如 ./src/helloWorld.java 就是一个相对路径

绝对路径的长度长,不太好记,但适用范围广

相对路径的长度短,方便记忆,但适用范围窄


提示:一般在 Vue 项目对图片进行引用时候,可采用这类引用语法,如下所示。

src: require(“@/assets/file.png”),

比如在 D 盘中存放了 A、B、C 三个文件夹,在其文件夹中分别存放了 a1、a2、a3、b1、b2、b3、c1、c2、c3 九个子文件夹,如下图所示。

对于子文件夹 a2 来说,他的绝对路径为:

D:/A/a2

但对于文件夹 A 来说,它的相对路径为:

./A/a2

请注意,相对路径一定要有参考对象,否则没有相对路径。


三、场景应用——固定电话

以上讲解绝对路径和相对路径的内容有点枯燥,接下来以一个生活中实际用到的例子来说明,绝对路径相对路径的区别和联系。

如果作者是浙江宁波的手机号,需要拨打 6281 0001 这个固定电话,则直接拨打 6281 0001 即可,这种拨打方式就是采用相对路径扫描到目标电话。

如果作者不是浙江宁波的手机号,则在固定电话之前需要加拨区号,需要拨打 0574 6282 0001,否则不能拨打成功。

如果作者在国外,不但需要加拨区号,还要加拨国际区号,需要拨打 +86 0574 6282 0001,否则不能拨打成功,这个号码可以理解为绝对路径


四、总结

简单来讲,绝对路径是把文件所在的完整路径逐一标识出来,相对路径是对某个目录的参考路径

在实战项目的开发中,相对路径会使用的多一些,因为作为开发者,不能去固化系统部署的目录,这样会给运维人员带来不变,也不利于自己系统的部署工作。

绝对地址可以用于开发调试环节,引用一个绝对文件进行测试,这样是可取的。


相关文章
|
1月前
|
人工智能 监控 安全
人体姿态[站着、摔倒、坐、深蹲、跑]检测数据集(6000张图片已划分、已标注)| AI训练适用于目标检测
本数据集包含6000张已标注人体姿态图片,覆盖站着、摔倒、坐、深蹲、跑五类动作,按5:1划分训练集与验证集,标注格式兼容YOLO等主流框架,适用于跌倒检测、健身分析、安防监控等AI目标检测任务,开箱即用,助力模型快速训练与部署。
|
存储 JSON 自然语言处理
手把手教你使用ModelScope训练一个文本分类模型
手把手教你使用ModelScope训练一个文本分类模型
|
2月前
|
机器学习/深度学习 监控 算法
基于YOLOv8的人体多姿态行为识别系统(站立、摔倒、坐姿、深蹲与跑步)|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
本项目基于YOLOv8深度学习模型,实现了一个多姿态行为识别系统,能够精准地识别站立、摔倒、坐姿、深蹲和跑步等行为。项目的核心内容包括完整的YOLOv8训练代码、标注数据集、预训练权重文件、部署教程和PyQt5界面,提供了一套从数据收集到最终部署的完整解决方案。
基于YOLOv8的人体多姿态行为识别系统(站立、摔倒、坐姿、深蹲与跑步)|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
|
机器学习/深度学习 数据采集 人工智能
|
SQL 监控 关系型数据库
Binlog详解
Mysql binlog是二进制日志文件,用于记录mysql的数据更新或者潜在更新(比如DELETE语句执行删除而实际并没有符合条件的数据),在mysql主从复制中就是依靠的binlog。
2851 0
|
算法 网络安全 数据安全/隐私保护
证书转换-SSL证书生成:cer,jks文件 韩俊强的博客
一.生成.jks文件 资料:HTTPS-老司机手把手教你SSL证书申购-TrustAsia证书 HTTPS时代已来,手把手指导申请免费SSL证书 1、keystore的生成: 分阶段生成: keytool -genkey -alias yushan(...
8340 0
|
数据处理 Python
彻底掌握Python集合:无序性、去重神器与高效集合运算指南
彻底掌握Python集合:无序性、去重神器与高效集合运算指南
389 1
|
存储 安全 Java
Java HashSet详解
`HashSet` 是 Java 中基于哈希表实现的 `Set` 接口集合,主要用于存储不重复元素,提供快速查找、插入和删除操作。它具有以下特点:不允许重复元素,元素无序,允许一个 `null` 元素,常用操作包括创建、添加、删除、检查元素及清空集合。由于其内部使用哈希表,基本操作的时间复杂度接近 O(1),性能高效。然而,`HashSet` 不保证元素顺序,也不是线程安全的,适用于需要快速访问和操作的场景。
513 10
|
测试技术 虚拟化 云计算
GitHub高赞!速通Python编程基础手册,被玩出花了!
随着云时代的来临,Python 语言越来越被程序开发人员喜欢和使用,因为其不仅简单易学,而且还有丰富的第三方程序库和相应完善的管理工具。 从命令行脚本程序到 GUI程序,从图形技术到科学计算,从软件开发到自动化测试,从云计算到虚拟化,所有这些领域都有 Python 的身影。 今天给小伙伴们分享的这份手册采用以任务为导向的编写模式,全面地介绍了 Python 编程基础及其相关知识的应用,讲解了如何利用 Python 的知识解决部分实际问题。
GitHub高赞!速通Python编程基础手册,被玩出花了!
|
安全 API 网络安全
​邮箱OTP认证验证API发送邮件接口
**摘要 (Markdown格式):** OTP认证增强在线服务安全,尤其适用于邮箱验证。AOKSend提供邮箱OTP验证API,实现安全的邮件发送和用户身份验证。关键优势包括提高安全性、简化用户体验、实时发送、可扩展性和多层安全。配置涉及生成API密钥、设置SMTP、实现OTP逻辑、发送邮件及验证。AOKSend的分析工具帮助优化策略,适合各规模企业。