Используйте File
getParentFile()
метод и String.lastIndexOf()
, чтобы получить просто непосредственный родительский каталог.
Комментарий Марка является лучшим решением, чем lastIndexOf()
:
file.getParentFile().getName();
Эти решения работают только в том случае, если файл имеет родительский файл (например, создан с помощью одного из конструкторов файлов, принимающего родительский файл).File
).Когда getParentFile()
равен нулю, вам нужно прибегнуть к использованию lastIndexOf
или использовать что-то вроде Apache Commons 'FileNameUtils.getFullPath()
:
FilenameUtils.getFullPathNoEndSeparator(file.getAbsolutePath());
=> C:/aaa/bbb/ccc/ddd
Существует несколько вариантов сохранения/ удалить префикс и конечный разделитель.Вы можете использовать тот же класс FilenameUtils
, чтобы получить имя из результата, использовать lastIndexOf
и т. Д.