在计算机领域,文件路径是指文件或文件夹所在的位置。为了方便访问文件或者文件夹,需要用到路径。在计算机中,文件路径分为绝对路径和相对路径两种类型。
一、绝对路径
绝对路径是指从计算机根目录出发,通过路径描述文件或者文件夹的位置。在 Windows 系统中,根目录是 C 盘或者其他盘符。绝对路径一般以盘符开始,例如 C:\Program Files\Internet Explorer\iexplore.exe,这就是一个典型的绝对路径。绝对路径的优点是准确性高,只要路径描述正确,无论在什么位置访问文件或文件夹都可以正常访问。
二、相对路径
相对路径是指从当前目录出发,通过路径描述文件或者文件夹的位置。相对路径使用当前目录作为起点,可以通过不同的标志来描述相对目录的位置关系。一般情况下,相对路径不以盘符开始,而是以.或..开始。例如,一个Java工程项目的目录结构如下图所示:
JavaProject
--src
----com.myproject.demo
-------HelloWorld.java
--lib
----commons-lang3-3.5.jar
如果当前目录是JavaProject,而我们要访问HelloWorld.java的话,相对路径的方式为:./src/com.myproject.demo/HelloWorld.java。其中'.'表示当前目录,'/'表示文件目录的分隔符。如果要访问commons-lang3-3.5.jar,则相对路径为:./lib/commons-lang3-3.5.jar。
相对路径的优点是可移植性高,即在不同的环境下都可以正常使用。相对路径的缺点是准确性不高,需要了解当前目录,容易发生路径描述错误。
三、绝对路径和相对路径的比较
1.路径的难易度
绝对路径描述方式比相对路径描述方式难度大很多。相对路径只需要通过当前目录,不同的标志来描述路径关系即可,而绝对路径需要准确的指出文件路径的每一级目录以及根目录的盘符。
2.路径的可移植性
相对路径是一种相对于当前工程路径的路径描述方式,相对路径中的'.'表示当前目录,'..'表示上级目录。由于相对路径是一种相对于当前目录的路径描述方式,因此能够保证在不同的环境下都可以正常使用到,可移植性很高。而绝对路径则需要考虑不同计算机的根目录不同,甚至在同一个计算机不同用户的根目录也是不一致的,没法保证可移植性。
3.路径的安全性
在文件访问时,一定要注意路径的安全性,比如说跨站脚本攻击,目录遍历攻击等,都是可以通过路径造成的安全漏洞,而绝对路径更容易造成漏洞。因为绝对路径包含了整个目录结构,可能会暴露其他敏感文件的位置,同时一旦代码移植成其他环境时,路径也会改变,因此,安全性更高的是相对路径。
扫码咨询 领取资料