ファイルを読み込むような際に、ユーザーにファイルを選択してもらいたいときがあります。
こんなときは、JFileChooserクラスを使ってファイル選択ダイアログを表示して、ファイルを選択してもらいます。
JFileChooserクラスを使ってファイル選択ダイアログを表示するサンプル
ファイル選択ダイアログを表示。ダイアログ初期表示時に、「C:\test\test.txt」を選択した状態にします。
また、ダイアログで選択したファイルを標準出力します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import java.io.File; import javax.swing.JFileChooser; public class JFileChooserTest { public static void main(String[] args) { JFileChooser chooser = new JFileChooser(); //デフォルトの選択ファイルを指定 chooser.setSelectedFile(new File("C:\\test\\test1\\a.txt")); //ダイアログを表示 chooser.showOpenDialog(null); //ダイアログの選択結果を取得 File file = chooser.getSelectedFile(); if(file != null) { System.out.println("選択したファイルを含んだフルパス:" + file.getPath()); System.out.println("選択したファイルのあるディレクトリ(フォルダ):" + file.getParent()); System.out.println("選択したファイルのファイル名:" + file.getName()); }else { System.out.println("選択してくれなかったよ(TT)"); } } } |
実行結果
次のように、ファイル選択ダイアログが表示されます。
JFileChooserでファイルを選択した場合、次のように標準出力されます。
1 2 3 | 選択したファイルを含んだフルパス:C:\test\test.txt 選択したファイルのあるディレクトリ(フォルダ):C:\test 選択したファイルのファイル名:test.txt |
また、JFileChooserでファイルを選択しなかった場合、次のように標準出力されます。
1 | 選択してくれなかったよ(TT) |
サンプルの解説
JFileChooser#showOpenDialog(Component)により、ファイル選択(開く)ダイアログを表示します。
引数に、親画面を指定することで、ファイル選択ダイアログをモーダル起動することができます。