[go] bufio 패키지를 이용한 데이터 스트림 처리
Go 언어에서 데이터를 스트림으로 처리할 때 bufio
패키지를 사용할 수 있습니다. 이 패키지는 데이터를 읽고 쓰는 동안 버퍼링을 제공해주어 입출력 효율을 높일 수 있습니다.
bufio 패키지 소개
bufio
패키지는 Go 표준 라이브러리에 포함되어 있으며, 입출력을 위한 버퍼링을 제공합니다. 이를 통해 작은 조각으로 나누어 읽거나 쓸 수 있으며, 데이터 스트림을 효율적으로 처리할 수 있습니다.
bufio 패키지 사용 예시
아래는 bufio
패키지를 사용하여 파일에서 데이터를 읽는 예시 코드입니다.
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("data.txt")
if err != nil {
panic(err)
}
defer file.Close()
reader := bufio.NewReader(file)
for {
line, err := reader.ReadString('\n')
if err != nil {
break
}
fmt.Print(line)
}
}
위 예제에서는 bufio.NewReader
함수를 사용하여 파일에서 한 줄씩 데이터를 읽고 출력하는 과정을 보여줍니다.
bufio
패키지를 사용하면 파일 뿐만 아니라 네트워크나 표준 입력과 같은 다양한 소스에서도 데이터를 효율적으로 읽고 쓸 수 있습니다.
결론
bufio
패키지를 사용하면 데이터를 스트림으로 효율적으로 처리할 수 있으며, 소스에서 읽거나 소스로 보내는 과정을 개선할 수 있습니다. 이를 통해 Go 언어에서의 입출력 작업을 보다 효율적으로 처리할 수 있습니다.
더 자세한 내용은 공식 Go 문서의 bufio 패키지 설명을 참고할 수 있습니다.