РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
544 of 1593 menu

Функция filepath.Join

Функция filepath.Join объединяет один или несколько элементов пути в один строковый путь. Она автоматически добавляет правильный разделитель для операционной системы: обратный слеш \ на Windows или прямой слеш / на Unix-подобных системах. Первым параметром функция принимает базовую директорию, а последующие параметры — вложенные элементы пути. В результате возвращается строка с объединенным путем.

Синтаксис

filepath.Join(elem ...string) string

Пример

Давайте объединим несколько элементов пути на Unix-системе:

package main import ( "fmt" "path/filepath" ) func main() { res := filepath.Join("home", "user", "docs", "file.txt") fmt.Println(res) }

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

"home/user/docs/file.txt"

Пример

Функция автоматически очищает путь, удаляя лишние слеши и нормализуя разделители:

package main import ( "fmt" "path/filepath" ) func main() { res := filepath.Join("home//user", "docs", "file.txt") fmt.Println(res) }

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

"home/user/docs/file.txt"

Пример

Функция игнорирует пустые элементы и обрабатывает абсолютные пути правильно:

package main import ( "fmt" "path/filepath" ) func main() { res1 := filepath.Join("", "dir", "file.txt") res2 := filepath.Join("/", "usr", "bin", "app") fmt.Println(res1) fmt.Println(res2) }

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

"dir/file.txt" "/usr/bin/app"

Пример

Функция корректно обрабатывает переходы по директориям с помощью ..:

package main import ( "fmt" "path/filepath" ) func main() { res := filepath.Join("home", "user", "..", "docs", "file.txt") fmt.Println(res) }

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

"home/docs/file.txt"

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

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