Go를 사용하여 표준 입력(Stdin)에서 데이터 가용성 확인
Go에서 os 패키지는 os.Stdin 변수에 액세스할 수 있도록 제공합니다. 표준 입력 스트림. 그러나 읽을 수 있는 데이터가 없는 경우 이 스트림이 차단되는 경우가 있습니다. 입력 스트림에 데이터가 있는지 확인하려면 os.Stdin을 파일처럼 처리하고 크기를 확인할 수 있습니다.
해결책:
As. Stdin은 파일처럼 동작하며, Stat() 메소드를 사용하여 크기를 포함한 파일 정보를 검색할 수 있습니다. 예는 다음과 같습니다.
<code class="go">package main import ( "fmt" "os" ) func main() { file := os.Stdin fi, err := file.Stat() if err != nil { fmt.Println("file.Stat()", err) } size := fi.Size() if size > 0 { fmt.Printf("%v bytes available in Stdin\n", size) } else { fmt.Println("Stdin is empty") } }</code>
사용법:
이 코드는 실행 파일 "pipe"로 사용할 수 있습니다:
<code class="bash">$ ./pipe Stdin is empty $ echo test | ./pipe 5 bytes available in Stdin</code>
In 첫 번째 줄에서는 파이프 실행 파일이 입력 없이 실행되어 빈 표준 입력과 "Stdin이 비어 있습니다."라는 출력이 생성됩니다. 두 번째 줄에는 "test"라는 텍스트가 입력에 파이프되어 Stdin의 크기가 증가하고 출력이 "Stdin에서 사용 가능한 5바이트"로 변경됩니다.
위 내용은 Go를 사용하여 표준 입력(Stdin)에서 데이터 가용성을 어떻게 확인할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!