[go] 경로와 파일 확장자 매칭

파일 시스템에서 파일을 찾거나 필요한 특정 파일을 필터링하는 경우 파일 경로와 확장자 매칭은 매우 유용합니다. Go 언어에서는 이러한 작업을 수행하기 위해 표준 라이브러리의 path/filepath 패키지를 사용할 수 있습니다.

경로 매칭

path/filepath 패키지는 파일 경로 매칭을 위한 Match 함수를 제공합니다. 이 함수를 사용하여 특정 패턴과 일치하는 파일을 찾을 수 있습니다. 다음은 간단한 예제입니다.

package main

import (
	"fmt"
	"path/filepath"
)

func main() {
	files, _ := filepath.Glob("path/to/directory/*.txt")
	for _, file := range files {
		fmt.Println(file)
	}
}

이 예제에서 filepath.Glob 함수는 지정된 디렉토리에서 .txt 확장자를 가진 파일을 찾습니다.

확장자 매칭

파일 확장자 매칭은 간단한 문자열 비교로 수행됩니다. 예를 들어, 파일이 특정 확장자로 끝나는지 확인하는 경우 다음과 같은 방식으로 비교할 수 있습니다.

package main

import (
	"fmt"
	"path/filepath"
	"strings"
)

func main() {
	fileName := "example.txt"
	if strings.HasSuffix(fileName, ".txt") {
		fmt.Println("This is a text file")
	}
}

strings.HasSuffix 함수는 파일명이 .txt로 끝나는지 확인하며, 이에 따라 해당 파일을 텍스트 파일로 인식합니다.

결론

Go의 path/filepath 패키지를 사용하여 파일 경로와 확장자를 매칭시키는 방법을 배웠습니다. 이를 통해 원하는 파일을 식별하고 필요한 작업을 수행하는 데 도움이 될 것입니다.

더 자세한 내용은 Go 공식 문서를 참조하십시오.