[go] go 언어의 입출력 처리

Go 언어는 간결하고 효율적인 입출력 처리를 제공하는 언어입니다. 이 포스트에서는 Go 언어에서의 표준 입출력 처리에 대해 알아보겠습니다.

표준 입력 처리

Go 언어에서는 fmt 패키지를 사용하여 표준 입력을 처리할 수 있습니다. 다음은 사용자로부터 입력을 받아 출력하는 간단한 예제입니다.

package main

import "fmt"

func main() {
    var input string
    fmt.Println("이름을 입력하세요:")
    fmt.Scanln(&input)
    fmt.Println("입력한 이름:", input)
}

위 코드에서 fmt.Scanln(&input)는 사용자로부터 한 줄을 입력받고, 입력 값을 input 변수에 저장합니다.

표준 출력 처리

Go 언어에서는 fmt 패키지의 PrintPrintf 함수를 사용하여 표준 출력을 처리할 수 있습니다. 아래는 형식화된 출력을 하는 예제입니다.

package main

import "fmt"

func main() {
    name := "Alice"
    age := 30
    fmt.Printf("이름: %s, 나이: %d\n", name, age)
}

위 코드에서 fmt.Printf 함수는 형식화된 문자열을 표준 출력으로 보냅니다.

파일 입출력 처리

Go 언어에서는 파일 처리를 위한 os 패키지와 bufio 패키지를 제공합니다. 파일을 읽고 쓰는 간단한 예제를 살펴보겠습니다.

package main

import (
    "bufio"
    "fmt"
    "os"
)

func main() {
    file, err := os.Open("input.txt")
    if err != nil {
        fmt.Println("파일을 열 수 없습니다:", err)
        return
    }
    defer file.Close()

    scanner := bufio.NewScanner(file)
    for scanner.Scan() {
        fmt.Println(scanner.Text())
    }
    if err := scanner.Err(); err != nil {
        fmt.Println("파일을 읽는 중 오류가 발생했습니다:", err)
    }
}

위 코드는 “input.txt” 파일을 열고, 한 줄씩 읽어서 표준 출력으로 출력하는 예제입니다.

이상으로 Go 언어에서의 입출력 처리에 대해 알아보았습니다. Go 언어는 간단하고 직관적인 입출력 처리를 위한 다양한 기능을 제공하고 있으므로, 입출력 처리에 능숙해지면 효율적인 프로그래밍을 할 수 있을 것입니다.