In Go, aliran input standard (os.Stdin) boleh disemak untuk data menggunakan teknik mengesahkan saiz failnya. Begini cara ia berfungsi:
Os.Stdin boleh diuruskan seperti mana-mana fail biasa, membolehkan kami memeriksa sifatnya. Untuk melakukan ini, kami mendapatkan semula objek FileInfo menggunakan os.Stdin.Stat(). Objek ini menyediakan pelbagai maklumat tentang fail, termasuk saiznya.
Dengan menyemak saiz fail, kita boleh menentukan sama ada strim Stdin mengandungi data. Jika saiznya lebih besar daripada sifar, ia menunjukkan kehadiran data. Sebaliknya, saiz sifar menunjukkan bahawa Stdin kosong.
Di bawah ialah contoh kod yang menunjukkan kaedah ini:
<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>
Teknik ini menyediakan cara yang berkesan untuk menentukan sama ada os.Stdin mempunyai data tanpa menyekat pelaksanaan program sementara menunggu input. Ia amat berguna dalam kes di mana anda perlu mengendalikan data masuk secara dinamik daripada sumber atau proses luaran.
Atas ialah kandungan terperinci Bagaimana untuk Mengesan Ketersediaan Data dalam Input Standard (Stdin) Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!