Go의 관용적 줄 읽기
Go의 표준 라이브러리에서 하위 수준 바이트 배열 반환 줄 읽기 기능을 사용할 수 있음에도 불구하고 readline에서 문자열을 얻기 위한 보다 관용적인 접근 방식이 존재합니다.
해결 방법
파일을 한 줄씩 원활하게 읽으려면 Readln(*bufio.Reader) 기능을 사용할 수 있습니다. 제공된 bufio.Reader 구조체에서 한 줄(줄 바꿈 문자 제외)을 검색합니다.
다음은 Readln 사용법을 보여주는 코드 조각입니다.
// Readln returns a single line (without the ending \n) // from the input buffered reader. // An error is returned iff there is an error with the // buffered reader. func Readln(r *bufio.Reader) (string, error) { var (isPrefix bool = true err error = nil line, ln []byte ) for isPrefix && err == nil { line, isPrefix, err = r.ReadLine() ln = append(ln, line...) } return string(ln),err }
이 함수는 읽는 데 사용할 수 있습니다. 파일의 각 줄:
f, err := os.Open(fi) if err != nil { fmt.Println("error opening file= ",err) os.Exit(1) } r := bufio.NewReader(f) s, e := Readln(r) for e == nil { fmt.Println(s) s,e = Readln(r) }
이 코드는 지정된 파일에서 한 줄씩 읽고 각 줄을 표준 출력으로 인쇄합니다.
위 내용은 Go에서 파일의 줄을 관용적으로 읽는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!