當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。