golang 스캐너 버퍼 늘리기

// ysoftman
// stdin 를 받을 수 있도록 터미널에서 직접 테스트해보자.
package main

import "fmt"
import "bufio"
import "os"

func main() {
// bufio 스캐너 테스트
scanner := bufio.NewScanner(os.Stdin)
fmt.Println("scanner watit intput ....")

// Scan 사용 후 Buffer 사용하면 panic 발생하니 Scan 사용전 Buffer() 설정하자
// Scan() 의 기본 버퍼는 MaxScanTokenSize = 64 * 1024 = 65535
// MaxScanTokenSize 이상 사용하려면 Buffer 로 버퍼 크기를 설정하자
buf := []byte{}
scanner.Buffer(buf, 100000)

// MaxScanTokenSize = 64 * 1024 가 기본
scanner.Scan()
fmt.Println("scanner.Text():", scanner.Text())
}


comments:

댓글 쓰기