반응형
로컬 파일에서 io.Reader 만들기
로컬 파일을 열고 io.Reader
. 그 이유는 io.Reader
다음과 같이 사용중인 라이브러리에 a 를 공급해야하기 때문입니다 .
func read(r io.Reader) (results []string) {
}
os.Open
반환 io.Reader
http://play.golang.org/p/BskGT09kxL
package main
import (
"fmt"
"io"
"os"
)
var _ io.Reader = (*os.File)(nil)
func main() {
fmt.Println("Hello, playground")
}
사용 os.Open () :
func Open (name string) (file * File, err error)
열기는 읽기 위해 명명 된 파일을 엽니 다. 성공하면 반환 된 파일의 메서드를 사용하여 읽을 수 있습니다. 연관된 파일 설명자는 O_RDONLY 모드를 갖습니다. 오류가 있으면 * PathError 유형이됩니다.
반환 된 type 값은 인터페이스를 *os.File
구현합니다 io.Reader
.
* os.File 유형은 io.Reader 인터페이스를 구현하므로 파일을 Reader로 반환 할 수 있습니다. 그러나 다음과 같이 큰 파일을 읽으려는 의도가 있다면 bufio 패키지 를 사용하는 것이 좋습니다 .
file, err := os.Open("path/file.ext")
// if err != nil { ... }
return bufio.NewReader(file)
다음은 텍스트 파일을 열고 반환 된 * os.File 인스턴스 f에서 io.Reader를 만드는 예입니다.
package main
import (
"io"
"os"
)
func main() {
f, err := os.Open("somefile.txt")
if err != nil {
panic(err)
}
defer f.Close()
var r io.Reader
r = f
}
참고 URL : https://stackoverflow.com/questions/25677235/create-a-io-reader-from-a-local-file
반응형
'Programing' 카테고리의 다른 글
번 들러를 다운 그레이드하거나 레일을 업그레이드하는 방법은 무엇입니까? (0) | 2020.11.11 |
---|---|
Retina 디스플레이 용 웹 페이지를 테스트하는 방법은 무엇입니까? (0) | 2020.11.11 |
Scala 이중 정의 (2 개의 메서드는 동일한 유형의 삭제를 가짐) (0) | 2020.11.11 |
마샬링이란 무엇입니까? (0) | 2020.11.11 |
캘린더와 함께 SimpleDateFormat을 어떻게 활용할 수 있습니까? (0) | 2020.11.11 |