>  기사  >  백엔드 개발  >  Go를 사용하여 표준 입력(Stdin)에서 데이터 가용성을 어떻게 확인할 수 있나요?

Go를 사용하여 표준 입력(Stdin)에서 데이터 가용성을 어떻게 확인할 수 있나요?

Linda Hamilton
Linda Hamilton원래의
2024-11-03 13:11:30925검색

How Can I Check for Data Availability in Standard Input (Stdin) Using Go?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.