Как создать новый каталог в месте расположения существующего файла? - PullRequest
1 голос
/ 27 июля 2011

Я довольно новичок в Java, поэтому, пожалуйста, прости меня, если это глупый вопрос.

По сути, файл - это песня. Я использую JFileChooser для выбора нескольких песен. Затем я делаю некоторые вещи с массивом песен (их именами файлов и путями). Затем я хочу создать 2 каталога внутри каталога, в котором находятся песни, каталог для имени исполнителя и каталог для имени альбома в каталоге имени исполнителя. Затем я хочу переместить файлы в моем массиве в каталог альбома.

Я вполне уверен, что должен использовать метод mkdirs ().

Как я могу сказать программе сделать каталоги в расположении песен, пути которых я сохранил в массиве файлов? Я могу найти только примеры избавления от расширения, а не имени файла, чтобы можно было использовать путь для метода mkdirs ().

Ответы [ 2 ]

3 голосов
/ 27 июля 2011

Предположим, у вас есть File foo, который указывает на c:\foo\bar\baz\music.wav, чтобы получить родительский каталог, вы можете использовать File.getParentFile().Я рекомендую создавать подкаталоги с помощью конструктора File:

File subdir1 = new File(foo.getParentFile(), "mysubdir1");
if(!subdir1.exists()){
    subdir1.mkdirs();
}

Поскольку вы уверены, что родительский элемент subdir1 существует, вы можете вместо этого вызвать subdir1.mkdir(), но не будетепотерять что-нибудь, позвонив mkdirs.

0 голосов
/ 27 июля 2011

Я думаю, вы ищете одну из функций getParent () .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...