2012-11-22 4 views
11

Windows上のJFileChooserのデフォルトディレクトリを "My Music"に変更します。 自分のユーザー名がデフォルトC:\Users\Fre\Documentsに設定されているFreJFileChooserはWindowsのデフォルトディレクトリを変更します

であるため、このディレクトリには、私のアカウントにC:\Users\Fre\Musicである(と思うOSに依存します)。 これを変更するにはどうすればよいですか?

yourFileChooser.setCurrentDirectory(new File 
(System.getProperty("user.home") + System.getProperty("file.separator")+ "Music")); 
+0

ユーザーの「ミュージック」フォルダが、必ず指定したディレクトリパスにあるとは限りません。ユーザーが簡単に変更できます。 http://www.techsupportalert.com/content/how-move-windows-7-personal-folders-my-documents-another-drive.htm –

答えて

20

あなたはAPIメソッドsetCurrentDirectoryを使用することができます。

String userhome = System.getProperty("user.home"); 
JFileChooser fc = new JFileChooser(userhome +"\\Music"); 
+0

はい、どちらのディレクトリですか?今私は自分のアカウントでそれを実行しているので、アプリケーションは別のユーザー名を別のアカウントに持っています。 – dumazy

+0

"line.separator"ではなく、実際にSystem.getProperty( "file.separator")を意味すると思います。行区切り文字は、文字列を改行します。 – wiredmark

4

お時間を割いて申し訳ありませんが、 ちょうど自分の答えを見つけました:よう

public void setCurrentDirectory(File dir) 

使用例は次のようになります。あなたのJFileChooserのオブジェクトを初期化するとき

+1

私はline.separatorも使うことをお勧めします。あなたのユーザがLinuxユーザの場合はどうなりますか? – Juvanis

+0

それについては分かりません。おそらく、まず、実行中のOSを確認してから、使用するディレクトリを決めることができます。 – dumazy

2
JFileChooser openFile = new JFileChooser("C:\\Users\\Fre\\Music"); 
8
あなたはそれを作成するときに、あなただけのファイルチューザにパスを与えていない理由を

、のような:

JFileChooser chooser = new JFileChooser("C:\\Users\\Fre\\Music\\"); 
0

デフォルトのファイルのディレクトリを設定するように、すべての独自のコードを作成不要と長いです。それを行うもっと簡単で素早い方法は、デザインビューでファイルセレクタ自体を右クリックし、[コードをカスタマイズ]を右クリックすることです。

Customise Code for File Chooser

これは、あなたにそのGUI部品に不可欠なコードが表示されます。コードの一番上のドロップダウンボックスから、「カスタム作成」を選択します。

fileChooser =が割り当てられているものをカスタマイズすることができます。中括弧JFileChooser()の間で、このようなスピーチマークを含むファイルディレクトリにハードコードすることができます。

JFileChooser("C:\Users\user\Documents") 

または以前に作成した変数の名前を入力します。この変数はファイルディレクトリを保持します。私は後者のオプションをお勧めしますが、いずれかうまく動作します。

これが役に立ちます。

p.s.写真のリンクを使用しなければならないと申し訳ありません。私はまだ十分な特権を持っていません。

関連する問題