当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java File getCanonicalPath()用法及代码示例


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并设置文件的路径



相关用法


注:本文由纯净天空筛选整理自andrew1234大神的英文原创作品 File getCanonicalPath() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。