Функция resolveSibling
Функция resolveSibling класса File создает новый объект File,
путь которого формируется путем замены имени файла или последнего компонента пути
текущего файла на указанный путь. Если текущий файл не имеет родительского каталога,
функция пытается разрешить указанный путь как абсолютный.
Импорт
kotlinimport java.io.File
Синтаксис
kotlinfun resolveSibling(child: String): File
kotlinfun resolveSibling(child: Path): File
Пример
Создадим файл с путем "/home/user/document.txt" и получим
соседний файл с именем "image.jpg" в том же каталоге:
kotlinval file = File("/home/user/document.txt")
val sibling = file.resolveSibling("image.jpg")
println(sibling.absolutePath)
Результат выполнения кода:
kotlinString "/home/user/image.jpg"
Пример
Получим соседний файл в подкаталоге относительно текущего файла:
kotlinval file = File("/var/log/app.log")
val sibling = file.resolveSibling("backups/archive.log")
println(sibling.absolutePath)
Результат выполнения кода:
kotlinString "/var/backups/archive.log"
Пример
Использование абсолютного пути в качестве параметра:
kotlinval file = File("data.txt")
val sibling = file.resolveSibling("/tmp/tempfile.tmp")
println(sibling.absolutePath)
Результат выполнения кода:
kotlinString "/tmp/tempfile.tmp"
Пример
Работа с относительными путями и переход на уровень выше:
kotlinval file = File("project/src/main.kt")
val sibling = file.resolveSibling("../README.md")
println(sibling.absolutePath)
Результат выполнения кода:
kotlinString "/current/directory/project/../README.md"