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

Функция filepath.Split

Функция filepath.Split разделяет путь на две части: директорию и имя файла. В первый параметр мы передаем строку с путем для разделения. Функция возвращает два значения: первый — путь к директории (с завершающим разделителем), второй — имя файла или последний компонент пути. Если в пути нет разделителя, то директория возвращается как пустая строка.

Синтаксис

dir, file := filepath.Split(path)

Пример

Давайте разобьем путь "/home/user/file.txt" на директорию и имя файла:

package main import ( "fmt" "path/filepath" ) func main() { dir, file := filepath.Split("/home/user/file.txt") fmt.Printf("dir: %q, file: %q\n", dir, file) }

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

"dir: /home/user/, file: file.txt"

Пример

Если путь не содержит разделителя, то директория возвращается пустой, а файл — это весь путь:

package main import ( "fmt" "path/filepath" ) func main() { dir, file := filepath.Split("file.txt") fmt.Printf("dir: %q, file: %q\n", dir, file) }

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

"dir: , file: file.txt"

Пример

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

package main import ( "fmt" "path/filepath" ) func main() { dir, file := filepath.Split("/home/user/") fmt.Printf("dir: %q, file: %q\n", dir, file) }

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

"dir: /home/user/, file: "

Пример

Разделим путь с несколькими уровнями вложенности:

package main import ( "fmt" "path/filepath" ) func main() { dir, file := filepath.Split("/var/log/nginx/access.log") fmt.Printf("dir: %q, file: %q\n", dir, file) }

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

"dir: /var/log/nginx/, file: access.log"

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

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