在Java 專案中,嘗試存取文字時遇到錯誤來自指定相對路徑的檔案。此錯誤是由於 java.io.File 類別無法定位指定路徑而產生的。
要解決此問題,建議從類別路徑中檢索文件,而不是依賴文件系統。透過這樣做,您可以消除相對路徑的需要,並確保無論當前工作目錄如何,都能取得該檔案。
假設ListStopWords.txt 檔案與FileLoader 類別駐留在同一套件中,則以下內容程式碼示範如何從類別路徑取得檔案:
URL url = getClass().getResource("ListStopWords.txt");
File file = new File(url.getPath());
或者,如果您的唯一目的是獲取文件的InputStream,您可以使用以下方法:
InputStream input = getClass().getResourceAsStream("ListStopWords.txt");
此方法是首選,因為它可以容納各種檔案系統表示形式,包括虛擬檔案系統和網路路徑。
此外,如果該文件是一個包含鍵值對的屬性文件,可以直接從InputStream加載它:
Properties properties = new Properties();
properties.load(getClass().getResourceAsStream("ListStopWords.txt"));
請注意,如果您從靜態上下文存取文件,則應將getClass() 替換為YourClass.class (其中YourClass代表您的班級名稱)。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3