2015-12-13 40 views
-1

我想從我的程序訪問一個不同的包中的文件,但我不斷收到錯誤。下面是一個方法的代碼片斷,它返回一個字符串,它將是文件路徑。我曾嘗試查看以前發佈過類似問題的帖子,但找不到解決方案。我在這部分代碼中做錯了什麼?從不同的包訪問路徑

P.S. Info.IN是我嘗試訪問的文件的名稱。

URL main = Pong.class.getResource("Info.IN"); 
    if (!"file".equalsIgnoreCase(main.getProtocol())) 
     throw new IllegalStateException("Main class is not stored in a file."); 
    File path = new File(main.getPath()); 
    return inputResult; 
+1

什麼是inputResult?你正在返回它,但我沒有看到你給它分配一個值。 –

+0

inputResult是路徑的字符串形式。 (inputResult =「」+ path) –

+1

你得到的錯誤是什麼?請將錯誤和堆棧跟蹤添加到問題中。 – RealSkeptic

回答

1

首先,我不認爲你需要這個:

if (!"file".equalsIgnoreCase(main.getProtocol())) 
     throw new IllegalStateException("Main class is not stored in a file."); 

嘗試使用該工具來獲取文件:

File path = new File(Pong.class.getClassLoader().getResource("Info.IN").toURI()); 
+0

謝謝你這個工作! –

+0

很高興我能幫到你。請接受答案,以便我可以獲得信貸。謝謝! –