getCanonicalPath()方法是Path类的一部分。此函数返回给定文件对象的规范路径名。如果文件对象的路径名是Canonical,则它仅返回当前文件对象的路径。规范路径始终是绝对且唯一的,该函数会删除路径中的“。”和“ ..”(如果存在)。
例如:如果我们使用路径“program.txt”创建一个文件对象,则它指向存在于可执行程序所在目录中的文件(如果您使用的是IDE,它将指向保存该程序的文件)。此处上述文件的路径为“program.txt”,但该路径不是绝对路径(即不完整)。函数getCanonicalPath()将返回一个路径,该路径将是根目录中的绝对唯一路径。现有文件的规范形式可能与相同的不存在文件的规范形式不同,并且在删除现有文件时,现有文件的规范形式可能与同一文件的规范形式不同。
函数签名:
public String getCanonicalPath()
函数语法:
file.getCanonicalPath()
参数:该函数不接受任何参数。
返回值:如果给定File对象的规范路径,则该函数返回String值。
异常:此方法引发以下异常:
- 安全异常 如果无法访问所需的属性值。
- I /O异常如果发生I /O异常。
下面的程序将说明getAbsolutePath()方法的使用:
范例1:我们有一个带有指定路径的File对象,我们将尝试查找其规范路径。
// Java program to demonstrate the
// use of getCanonicalPath() function
import java.io.*;
public class solution {
public static void main(String args[])
{
// try-catch block to handle exceptions
try {
// Create a file object
File f = new File("c:\\program");
// Get the Canonical path of file f
String canonical = f.getCanonicalPath();
// Display the file path of the file object
// and also the file path of Canonical file
System.out.println("Original file path : "
+ f.getPath());
System.out.println("Canonical file path : "
+ canonical);
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
输出
Original file path : c:\program Canonical file path : C:\program
范例2:我们有一个具有指定路径的File对象,我们将尝试查找其规范路径。
// Java program to demonstrate the
// use of getCanonicalPath() function
import java.io.*;
public class solution {
public static void main(String args[])
{
// try-catch block to handle exceptions
try {
// Create a file object
File f = new File("c:\\users\\..\\program");
// Get the Canonical path of file f
String canonical = f.getCanonicalPath();
// Display the file path of the file object
// and also the file path of Canonical file
System.out.println("Original file path : "
+ f.getPath());
System.out.println("Canonical file path : "
+ canonical);
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
输出
Original file path : c:\users\..\program Canonical file path : C:\program
这些程序可能无法在在线IDE中运行。请使用离线IDE并设置文件的路径
相关用法
- Java File isHidden()用法及代码示例
- Java File length()用法及代码示例
- Java File delete()用法及代码示例
- Java File getName()用法及代码示例
- Java File createTempFile()用法及代码示例
- Java File getFreeSpace()用法及代码示例
- Java File getAbsolutePath()用法及代码示例
- Java File getAbsoluteFile()用法及代码示例
- Java File lastModified()用法及代码示例
- Java File createNewFile()用法及代码示例
- Java File isFile()用法及代码示例
- Java File exists()用法及代码示例
- Java File getTotalSpace()用法及代码示例
- Java File setExecutable()用法及代码示例
- Java File mkdir()用法及代码示例
注:本文由纯净天空筛选整理自andrew1234大神的英文原创作品 File getCanonicalPath() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。