[go] 파일 경로 조작을 위한 filepath 패키지 기능
Go 프로그래밍 언어의 filepath
패키지는 파일 경로를 조작하고 조사하는 데 유용한 함수들을 제공합니다. 이 패키지를 사용하여 파일 시스템 내에서의 파일 경로를 쉽게 다룰 수 있습니다.
filepath 패키지 기능
filepath
패키지는 파일 경로와 관련된 다양한 작업을 수행하는 데 사용됩니다. 주요 기능은 다음과 같습니다.
- 파일 경로 조작
- 경로 분리
- 상대 경로 해석
- 경로 정규화
- 경로 비교
파일 경로 조작
filepath
패키지를 사용하여 파일의 경로를 쉽게 조작할 수 있습니다. 예를 들어, 파일 경로를 결합하거나 경로에서 디렉터리, 파일 이름 및 확장자를 추출할 수 있습니다.
package main
import (
"fmt"
"path/filepath"
)
func main() {
dir := "/path/to/directory"
filename := "file.txt"
fullPath := filepath.Join(dir, filename)
fmt.Println("Full path:", fullPath)
}
경로 분리
패키지는 파일 경로를 디렉터리 경로와 파일명으로 쉽게 나눌 수 있도록 해줍니다.
dir, file := filepath.Split("/path/to/file.txt")
fmt.Println("Directory:", dir)
fmt.Println("File:", file)
상대 경로 해석
filepath
패키지는 상대 경로를 절대 경로로 변환하거나 절대 경로를 상대 경로로 변환하는 함수도 제공합니다.
absPath, _ := filepath.Abs("relative/path/to/file.txt")
fmt.Println("Absolute path:", absPath)
relPath, _ := filepath.Rel("/base/path", "/base/path/relative/file.txt")
fmt.Println("Relative path:", relPath)
경로 정규화
패키지는 경로를 정규화하는 함수도 포함하고 있어, ../ 나 ./ 와 같은 상대 경로 구성을 제거할 수 있습니다.
cleanedPath := filepath.Clean("/path/to/../file.txt")
fmt.Println("Cleaned path:", cleanedPath)
경로 비교
filepath
패키지를 사용하여 두 경로를 비교하고 같은지 여부를 확인할 수도 있습니다.
equal := filepath.EqualFold("/path/to/file.txt", "/path/TO/FILE.TXT")
fmt.Println("Paths are equal:", equal)
이처럼 filepath
패키지는 파일 경로를 조작하고 분석하는 데 유용한 기능들을 제공합니다.
더 많은 정보를 원하시면 공식 Go 문서를 참조해주시기 바랍니다.