Golang ialah bahasa pengaturcaraan popular yang menyediakan banyak fungsi terbina dalam yang berguna apabila berurusan dengan input dan output. Dalam sesetengah kes, kami mungkin mahu melumpuhkan input pengguna ke dalam program kami. Artikel ini akan menerangkan cara untuk mematikan input dalam Golang.
Dalam sesetengah aplikasi, kami perlu memastikan ketepatan dan keselamatan input. Contohnya, masukkan beberapa maklumat sulit atau masukkan data yang mempengaruhi logik program. Dalam kes ini, kami mahu dapat mengehadkan sumber input program dan memastikan ketepatan input.
Di Golang, terdapat beberapa cara untuk menutup input. Dua daripada kaedah ini akan diperkenalkan di bawah.
Di Golang, os.Stdin ialah pembolehubah terbina dalam yang sangat berguna yang mewakili aliran input standard program. Menutup pembolehubah ini akan menghalang program daripada membaca data daripada aliran input standard.
Gunakan fungsi os.Stdin.Close() untuk menutup input standard program.
package main import ( "fmt" "os" ) func main() { fmt.Println("input your name:") var name string _, err := fmt.Scanln(&name) if err != nil { fmt.Println(err) } fmt.Println("Hello", name) os.Stdin.Close()//关闭标准输入 fmt.Scanln()//此时将不能再输入 }
Struktur bufio.Reader di Golang juga menyediakan kaedah untuk mematikan input. Secara khusus, kita boleh menyemak sama ada input telah tamat apabila membaca input Jika input telah tamat, kita boleh menutup input dan melarang input data selanjutnya.
package main import ( "bufio" "fmt" "os" ) func main() { fmt.Println("input your name:") var name string reader := bufio.NewReader(os.Stdin) for { line, err := reader.ReadString('\n') if line == "\n" { fmt.Println("Name:", name) break } if err == nil { name += line } else if err.Error() == "EOF" { fmt.Println("Name:", name) break } } reader = nil }
Dalam kod di atas, kami menggunakan fungsi bufio.NewReader() untuk mencipta objek bufio.Reader dan menggunakan kaedah ReadString() untuk membaca input.
Selepas setiap membaca, kami menyemak sama ada ralat adalah io.EOF. Jika ya, ini bermakna input telah tamat dan kita boleh menutup input.
Di atas ialah dua cara untuk menutup input Golang. Dalam sesetengah kes, kami mungkin perlu melumpuhkan input pengguna. Menggunakan kaedah ini boleh membantu kami memastikan ketepatan dan keselamatan program.
Sudah tentu, mematikan input tidak selalunya diperlukan. Situasi khusus perlu ditentukan mengikut senario aplikasi.
Atas ialah kandungan terperinci Bagaimana untuk menutup input di Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!