[go] go 언어에서의 플래그 값 변환 방법

플래그(Flag)는 프로그램을 실행할 때 특정한 옵션을 설정하기 위해 사용됩니다. Go 언어에는 flag 패키지를 사용하여 명령행 인자를 처리하고, 그 값을 다양한 형식으로 변환할 수 있습니다. 이 글에서는 Go 언어에서 플래그 값 변환 방법을 알아보겠습니다.

Parsing Flags

flag 패키지를 사용하여 플래그를 파싱할 수 있습니다. 다음은 간단한 예제 코드입니다.

package main

import (
	"flag"
	"fmt"
)

func main() {
	// Define flags
	var name string
	var age int
	var male bool

	// Parse
	flag.StringVar(&name, "name", "guest", "The name of the user")
	flag.IntVar(&age, "age", 18, "The age of the user")
	flag.BoolVar(&male, "male", false, "The user's gender")

	flag.Parse()

	// Print the flag values
	fmt.Println("Name:", name)
	fmt.Println("Age:", age)
	fmt.Println("Male:", male)
}

Converting Flag Values

플래그로 전달된 값을 Go 언어의 기본 데이터 타입으로 변환할 수 있습니다. 예를 들어, 문자열을 정수형으로 변환하거나 불리언 값으로 변환할 수 있습니다.

문자열을 정수형으로 변환하기

age, err := strconv.Atoi(ageStr)
if err != nil {
    // 처리할 오류
}

문자열을 불리언으로 변환하기

male, err := strconv.ParseBool(maleStr)
if err != nil {
    // 처리할 오류
}

결론

Go 언어에서는 flag 패키지를 사용하여 명령행 인자를 처리하고, 플래그로부터 얻은 값을 필요한 형식으로 변환할 수 있습니다.

참고 자료: