圖片描述試圖訪問與我的 HelloController.java 檔案位于同一位置的 test.txt 檔案,但由于某種原因,它顯示該檔案不存在。我試過移動檔案,但它不起作用。
使用絕對路徑有效,但這是一個共享專案,因此它將在其他計算機上運行。任何建議將不勝感激。
uj5u.com熱心網友回復:
最好的辦法是將它添加到類路徑中并將其作為類路徑資源讀取。
uj5u.com熱心網友回復:
相對路徑根是您的“作業目錄”。這意味著如果您嘗試訪問“。” 您將從您的作業目錄開始。該目錄只為您的應用程式設定一次,通常是您啟動它時打開的檔案夾。
使用 IDE(如您的情況)時,作業目錄將是您專案的根檔案夾(因此 pom.xml 和 src 檔案夾所在的檔案夾。
如果您想通過普通檔案 API 訪問該檔案,您當前正在使用,只需將檔案放在該目錄中,它應該可以作業(假設您與同一位置的其他人共享它)。
如果您需要將檔案放在生成的輸出 jar 檔案中,則需要將檔案用作資源(參見 duffymo 的答案),因為檔案本身在檔案系統中并不存在,而是作為檔案在您的jar 檔案。
如果你想知道你當前的作業目錄,你可以為“.”創建一個檔案參考。并將其擴展為絕對路徑(它將替換“.”和“..”之類的參考并從您的根目錄生成檔案路徑),然后將其寫入控制臺。這看起來像這樣:
// Get refrence to the current working directory
File workingDirectoryReference = new File(".");
// Convert it to an absolute path string
String absolutePath = workingDirectoryReference.getAbsolutePath();
// Output to console
System.out.println(absolutePath );
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/455089.html
標籤:爪哇
上一篇:如何在Java中對條目進行排序
下一篇:JavaSwing登錄視窗未關閉
