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

Свойство canonicalPath

Свойство canonicalPath класса File возвращает абсолютный канонический путь к файлу или директории. Оно разрешает относительные пути, символические ссылки и специальные обозначения (например, . и ..) в пути, возвращая уникальное и однозначное представление пути в файловой системе.

Импорт

import java.io.File

Синтаксис

val File.canonicalPath: String

Пример

Получим канонический путь для файла с относительным путем:

val file = File("./documents/report.txt") val path = file.canonicalPath println(path)

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

String "/home/user/documents/report.txt"

Пример

Получим канонический путь для файла с использованием родительской директории:

val file = File("../project/src/main.kt") val path = file.canonicalPath println(path)

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

String "/home/project/src/main.kt"

Пример

Сравним абсолютный и канонический пути для файла с символической ссылкой:

val file = File("/var/www/html") val absolute = file.absolutePath val canonical = file.canonicalPath println("Absolute: $absolute") println("Canonical: $canonical")

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

Absolute: /var/www/html Canonical: /srv/http

Пример

Использование canonicalPath для проверки существования файла и получения его реального расположения:

val file = File("~/config/settings.conf") if (file.exists()) { val realPath = file.canonicalPath println("File found at: $realPath") } else { println("File not found") }

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

File found at: /home/user/config/settings.conf

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

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