2011-02-16 87 views
0

我只想將目錄設置爲我之前寫入文件的路徑。將目錄設置爲文件中的路徑

因此我使用:

fileChooser.setCurrentDirectory(new File("path.txt")); 

和path.txt給定該路徑。但不幸的是,這並沒有解決,我想知道爲什麼:P。 我想我完全搞錯了與setCurrentDic ..

+0

setCurrentDirectory接受路徑,而不是文件名。所以你的新文件(「path.txt」)只會表示當前工作目錄將被設置爲**你的當前目錄。再次閱讀javadoc。 – asgs 2011-02-16 12:36:47

回答

0
JFileChooser chooser = new JFileChooser(); 

try { 
    // Create a File object containing the canonical path of the 
    // desired directory 
    File f = new File(new File(".").getCanonicalPath()); 

    // Set the current directory 
    chooser.setCurrentDirectory(f); 
} catch (IOException e) { 
} 
1

您必須閱讀的path.txt內容。西婭最簡單的方法就是通過commons-io

String fileContents = IOUtils.toString(new FileInputStream("path.txt")); 
File dir = new File(fileContents); 

您還可以使用FileUtils.readFileToString(..)

+0

啊好吧,我看到...但IOUtils.toString(新文件(「path.txt」));拋出錯誤,那toString不適用於參數文件 – NeoGeo 2011-02-16 12:43:38

+0

@NeoGeo`new FileInputStream(..)`,或者看到我的更新 – Bozho 2011-02-16 12:45:47

2

setCurrentDirectory接受表示一個目錄作爲參數的文件。不是寫入路徑的文本文件。

做你想做什麼,你要讀文件「path.txt」,創建與你剛纔讀的內容的文件對象,並通過這個文件來setCurrentDirectory:

String pathWrittenInTextFile = readFileAsString(new File("path.txt")); 
File theDirectory = new File(pathWrittenInTextFile); 
fileChooser.setCurrentDirectory(theDirectory); 
相關問題