НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
616 of 1310 menu

Свойство parent

Свойство parent доступно для объектов класса File и возвращает родительскую директорию текущего файла или директории. Если путь не имеет родительской директории, возвращается null.

Импорт

import java.io.File

Синтаксис

val File.parent: String?
val File.parentFile: File?

Пример

Получим родительскую директорию файла:

val file = File("/home/user/documents/report.txt") val parentPath: String? = file.parent println(parentPath)

Результат выполнения кода:

String "/home/user/documents"

Пример

Получим родительскую директорию в виде объекта File:

val file = File("/home/user/documents/report.txt") val parentFile: File? = file.parentFile println(parentFile?.absolutePath)

Результат выполнения кода:

String "/home/user/documents"

Пример

Проверим случай, когда родительская директория отсутствует:

val file1 = File("file.txt") val file2 = File("/") println(file1.parent) println(file2.parent)

Результат выполнения кода:

null null

Пример

Использование parent для создания путей:

val file = File("/var/www/html/index.html") val parentDir = file.parentFile if (parentDir != null) { val backupFile = File(parentDir, "index.backup.html") println(backupFile.absolutePath) }

Результат выполнения кода:

String "/var/www/html/index.backup.html"

Пример

Проверка существования родительской директории:

val file = File("/tmp/newdir/file.txt") val parent = file.parentFile if (parent != null && !parent.exists()) { parent.mkdirs() println("Created directory: " + parent.absolutePath) } file.createNewFile() println("File created: " + file.exists())

Результат выполнения кода:

String "Created directory: /tmp/newdir" Boolean true

Пример

Получение цепочки родительских директорий:

val file = File("/a/b/c/d/e.txt") var current: File? = file.parentFile while (current != null) { println(current.absolutePath) current = current.parentFile }

Результат выполнения кода:

String "/a/b/c/d" String "/a/b/c" String "/a/b" String "/a"

Смотрите также

  • свойство path,
    которое возвращает полный путь к файлу
  • свойство extension,
    которое возвращает расширение файла
  • свойство name,
    которое возвращает имя файла
  • свойство absolutePath,
    которое возвращает абсолютный путь к файлу
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить