JFileChooser change default directory in Windows
Asked Answered
S

7

21

I want to change the default directory of my JFileChooser to "My Music" on Windows. This directory is C:\Users\Fre\Music on my account because my username is Fre

The default is set on C:\Users\Fre\Documents (depends on OS i think). How can I change this?

Slalom answered 22/11, 2012 at 16:29 Comment(1)
Be aware that a user's Music folder is not necessarily at the directory path you mention. It can be changed easily by the user. See techsupportalert.com/content/…Forsooth
C
39

You can use the API method setCurrentDirectory when initializing your JFileChooser objects:

public void setCurrentDirectory(File dir)

Sample usage might be like:

yourFileChooser.setCurrentDirectory(new File  
(System.getProperty("user.home") + System.getProperty("file.separator")+ "Music"));
Canaletto answered 22/11, 2012 at 16:32 Comment(2)
yes, but to which directory? because now I'm running it on my account but the application will have another username on another accountSlalom
I think you actually meant System.getProperty("file.separator"), not "line.separator". Line separator makes the string go on a new line.Cribble
S
13

why don't you just give the FileChooser the path when you create it, like:

JFileChooser chooser = new JFileChooser("C:\\Users\\Fre\\Music\\");
Saber answered 9/5, 2014 at 7:3 Comment(0)
S
4

Sorry for taking your time, Just found the answer myself:

String userhome = System.getProperty("user.home");
JFileChooser fc = new JFileChooser(userhome +"\\Music");
Slalom answered 22/11, 2012 at 16:37 Comment(2)
I suggest you to use line.separator as well, what if your user is a linux user?Canaletto
Not really sure about that. Perhaps I can first check the OS it's running on, and then decide what directory to use.Slalom
T
4
JFileChooser openFile = new JFileChooser("C:\\Users\\Fre\\Music");
Truncation answered 19/9, 2013 at 11:46 Comment(0)
A
0

Creating all your own code, so as to set a default file directory is unnecessary and lengthy. A much easier and quicker way of doing it is by just right clicking on the File Chooser itself on Design view and right clicking 'customise code'.

Customise Code for File Chooser

This will show you the vital code for that GUI component. From the drop down box next to the top line of code, select 'custom creation'.

This will allow you to customise what fileChooser = is assigned to. Between the curly brackets JFileChooser() you can either hard code in the file directory with speech marks like this.

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

or type in a name that for a variable you created earlier. This variable would hold the file directory. I would recommend the latter option, though either will work fine.

Hope this helps.

p.s. sorry about having to use a link for the photo. I don't have enough privilege yet.

Aporia answered 19/3, 2016 at 9:12 Comment(0)
O
0

You can Change the default directory of my JFileChooser to "Directory you want" on Windows

JFileChooser fileChooser = new JFileChooser();
fileChooser.setCurrentDirectory(new File("put here your directory"));
int result = fileChooser.showOpenDialog(getParent());
if (result == JFileChooser.APPROVE_OPTION) 
{
    File selectedFile = fileChooser.getSelectedFile();
    jTextField.setText(selectedFile.getAbsolutePath());
}
Onetime answered 29/8, 2018 at 8:48 Comment(0)
N
0

Pretty Simple:

JFileChooser browseImageFile = new JFileChooser("User Defined Directory");
Neoma answered 3/6, 2020 at 13:22 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.