JFileChooser изменить каталог по умолчанию в Windows

Я хочу изменить каталог по умолчанию моего JFileChooser на «Моя музыка» в Windows. Этот каталог C:\Users\Fre\Music в моей учетной записи, потому что мое имя пользователя Fre

По умолчанию установлено значение C:\Users\Fre\Documents (я думаю, зависит от ОС). Как я могу это изменить?


person dumazy    schedule 22.11.2012    source источник
comment
Имейте в виду, что папка «Музыка» пользователя не обязательно находится в указанном вами пути к каталогу. Он может быть легко изменен пользователем. См. techsupportalert.com. /контент/   -  person Klitos Kyriacou    schedule 05.01.2016


Ответы (6)


Вы можете использовать метод API setCurrentDirectory при инициализации ваших объектов JFileChooser:

public void setCurrentDirectory(File dir)

Пример использования может быть таким:

yourFileChooser.setCurrentDirectory(new File  
(System.getProperty("user.home") + System.getProperty("file.separator")+ "Music"));
person Juvanis    schedule 22.11.2012
comment
да, но в какой каталог? потому что теперь я запускаю его в своей учетной записи, но приложение будет иметь другое имя пользователя в другой учетной записи - person dumazy; 22.11.2012
comment
Я думаю, вы на самом деле имели в виду System.getProperty(file.separator), а не line.separator. Разделитель строк переводит строку на новую строку. - person wiredmark; 05.01.2015

почему бы вам просто не указать FileChooser путь при его создании, например:

JFileChooser chooser = new JFileChooser("C:\\Users\\Fre\\Music\\");
person chou97    schedule 09.05.2014

Извините, что отнял ваше время, только что нашел ответ сам:

String userhome = System.getProperty("user.home");
JFileChooser fc = new JFileChooser(userhome +"\\Music");
person dumazy    schedule 22.11.2012
comment
Я предлагаю вам также использовать line.separator, что, если ваш пользователь — пользователь Linux? - person Juvanis; 22.11.2012
comment
Не совсем уверен в этом. Возможно, я могу сначала проверить ОС, на которой он работает, а затем решить, какой каталог использовать. - person dumazy; 22.11.2012

Создание всего вашего собственного кода, чтобы установить каталог файлов по умолчанию, является ненужным и длительным. Гораздо проще и быстрее сделать это, просто щелкнув правой кнопкой мыши на самом средстве выбора файлов в представлении «Дизайн» и щелкнув правой кнопкой мыши «настроить код».

Настроить код для выбора файлов

Это покажет вам жизненно важный код для этого компонента графического интерфейса. В раскрывающемся списке рядом с верхней строкой кода выберите «Пользовательское создание».

Это позволит вам настроить назначение fileChooser =. Между фигурными скобками JFileChooser() вы можете либо жестко закодировать в каталоге файлов речевые метки, подобные этому.

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

или введите имя для переменной, которую вы создали ранее. Эта переменная будет содержать каталог файла. Я бы рекомендовал последний вариант, хотя любой из них будет работать нормально.

Надеюсь это поможет.

p.s. извините за необходимость использовать ссылку на фото. У меня еще недостаточно привилегий.

person George T 97    schedule 19.03.2016

Вы можете изменить каталог по умолчанию моего JFileChooser на «Каталог, который вы хотите» в 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());
}
person Rrezart Prebreza    schedule 29.08.2018

Довольно просто:

JFileChooser browseImageFile = new JFileChooser("User Defined Directory");
person Chandra_lal    schedule 03.06.2020