[英]Java-netbeans 8.1: Unrecognized file?
因此,我開發了一個Java應用程序並嘗試讀取文件,我得到一條錯誤消息,提示文件configuration.txt不存在。
這是文件讀取代碼:
public static void main(String[] args) throws FileNotFoundException {
//reading configuration file
Scanner readConfigurationFile = new Scanner(new File("configuration.txt"));
是的,我確實包含了導入的必要IO庫和實用程序。
我將文件移動到了所有位置(在程序包中,項目文件夾中或bin文件夾中,等等。)並進行了測試,但沒有成功。
唯一有效的方法是將其移至桌面,然后在代碼中將文件的路徑放在桌面上(因此C:\\ User \\ .... \\ configuration.txt)
但這不是我想要的,因為其他人必須在不更改代碼的情況下運行它。
有什么建議/幫助嗎? 我在網上到處都看過,嘗試過不同的方法,但是它們沒有用。 有些會使我的代碼復雜化,所以我避免了。
提前致謝
如果您的配置文件旨在駐留在應用程序內部(它將部署在jar或war中), 則不應將其用作File
而是用作Resource
。
假設其相對路徑為org/example/files/configuration.txt
(*)。 您可以通過以下方式使用它:
InputStream is = getClass().getClassLoader().loadRessourceAsStream(
"org/example/files/configuration.txt");
Scanner readConfigurationFile = new Scanner(is);
(*),這可能是src/main/resources/org/...
如果你用maven,或src/org/...
如果你使用ant或偏食notive編譯器。
如果將其放在包文件夾中,則需要相對路徑。
以這種結構為例
您將訪問它
new File("src/main/java/com/example/configuration.txt");
即使您從Main.java
訪問它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.