在Java 中存取相關檔案:解決「java.io.File 無法找到路徑」錯誤
使用多包Java 時在專案中,從相對路徑存取檔案時經常會遇到挑戰。其中一個問題是「java.io.File 找不到指定的路徑」錯誤,當 File 建構函數無法找到指定的檔案路徑時,就會發生這種錯誤。
當您嘗試實例化File 物件時,通常會出現此錯誤使用相對路徑,例如:
<code class="java">File file = new File("properties\files\ListStopWords.txt");</code>
在這種情況下,可以在與存取它的類別不同的包中找到該文件。這可能會導致混亂,因為相對路徑可能與專案目錄結構中檔案的實體位置不對應。
要解決此問題,請考慮從類別路徑而不是磁碟檔案系統取得檔案。透過在類別上使用getResource() 方法,您可以擷取表示檔案在類別路徑中的位置的URL:
<code class="java">URL url = getClass().getResource("ListStopWords.txt"); File file = new File(url.getPath());</code>
此方法可確保檔案根據其在專案中的相對位置進行定位,無論目前工作目錄如何。
此外,如果您只需要文件的InputStream,則可以使用getResourceAsStream() 直接從類路徑獲取它:
<code class="java">InputStream input = getClass().getResourceAsStream("ListStopWords.txt");</code>
通過利用類路徑基於文件訪問,您可以避免依賴可能不明確的相對路徑,並確保對Java 專案中文件的可靠存取。
以上是如何解決 Java 存取相關文件時出現「java.io.File 找不到路徑」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!