Java中getPath,getAbsolutePath和getCanonicalPath区别

本文介绍了Java中File类的三个核心方法:getPath、getAbsolutePath和getCanonicalPath,用于获取文件路径的不同形式。通过示例代码展示了它们的区别,如getPath返回构造路径,getAbsolutePath返回当前路径与构造路径的组合,而getCanonicalPath则处理了相对路径中的.和...等问题,返回规范化的全路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法说明
getPath以构造路径作为返回值
getAbsolutePath以当前路径+构造路径作为返回值
getCanonicalPath以全路径作为返回值(如果构造路径包含.或…,会进行处理)

需要理解一下Canonical单词含义

在这里插入图片描述
测试示例

public static void main(String[] args) throws IOException {
    File file1 = new File("./hello.txt");
    File file2 = new File("/Users/caowei/hello.txt");
    System.out.println("-----默认相对路径:取得路径不同------");
    System.out.println(file1.getPath());
    System.out.println(file1.getAbsolutePath());
    System.out.println(file1.getCanonicalPath());
    System.out.println("-----默认绝对路径:取得路径相同------");
    System.out.println(file2.getPath());
    System.out.println(file2.getAbsolutePath());
    System.out.println(file2.getCanonicalPath());
    SpringApplication.run(Demo4Application.class, args);
}
 
结果如下

-----默认相对路径:取得路径不同------
./hello.txt
/Users/caowei/workspace/gitee/demo4/./hello.txt
/Users/caowei/workspace/gitee/demo4/hello.txt
-----默认绝对路径:取得路径相同------
/Users/caowei/hello.txt
/Users/caowei/hello.txt
/Users/caowei/hello.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值