2017-02-16 61 views
0

我當前正試圖使用​​JFileChooser以字符串形式返回文件或目錄的路徑。但是,我發現我不能選擇一個文件夾作爲我的選擇,直到我首先選擇一個文件。雖然這不是一個主要問題,但解決起來卻令人沮喪。無法使用JFileChooser選擇文件夾作爲目錄

Gfycat正在發生的事情:https://gfycat.com/DeadlyDeliriousAzurevase

代碼:

public static String openFileChooser() 
{ 
    int returnValue = fileChoose.showOpenDialog(null); 
    if(returnValue == JFileChooser.APPROVE_OPTION) 
    { 
     fileChoose.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); 
     return (fileChoose.getSelectedFile().getAbsoluteFile().toString()); 
    } 
    else 
    { 
     return "null"; 
    } 

} 

幫助將絕對感謝,謝謝!

回答

1

您正在設置文件選擇模式之後您已顯示對話框並且用戶點擊了該按鈕。這一點不會有任何效果。您需要在之前將其設置爲,然後顯示文件選擇器對話框。

你需要移動起來在你的方法中的第一行中的一行是:

fileChoose.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); 
+0

這很有道理。我正在將我的臉緊緊地貼在桌子上。感謝您的幫助! – MrSoupman

0

您應該更改您的代碼

JFileChooser fileChooser = new JFileChooser(); 
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); 
int returnValue = fileChooser.showOpenDialog(null); 
if (returnValue == JFileChooser.APPROVE_OPTION) { 
    System.out.println(fileChooser.getSelectedFile().getAbsoluteFile().toString()); 
} else { 
    System.out.println("Empty"); 
} 

之前,請確保調用
fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
你打開你的對話框

相關問題