java中file的getPath(),getAbsolutePath(),getCanonicalPath()的比较

来源:互联网 发布:python画爱心 编辑:程序博客网 时间:2024/06/03 21:26

getPath()会得到file构造函数参数的值;
getAbsolutePath()当参数为相对路径时会得到文件的绝对路径+相对路径,当参数为绝对路径时直接得到绝对路径;
getCanonicalPath()当参数为相对路径为得到文件的绝对路径,当参数为绝对路径时得到文件的绝对路径。

getPath(),getAbsolutePath()不能实际分析磁盘中的文件,只是根据构造函数的参数来进行路径解析,但getCanonicalPath()会结合磁盘中的文件进行解析。究其原因其实是windows系统文件对大小写不敏感,也就是说在windows上a.txt 和A.txt是一个文件,所以当文件存在时,就会按照实际的情况来显示。而在linux系统是大小写敏感的。ps:朋友们可以试一下把盘的名字改成小写的d,看看输出结果

0 0
原创粉丝点击