• 周六. 7 月 27th, 2024

    Go语言如何读取控制台一个字符

    root

    2 月 23, 2021 #Go

    GO如何读取控制台一个UTF-8编码的Unicode字符

    一、使用bufio.ReadRune()

    reader := bufio.NewReader(os.Stdin)
    char, _, err := reader.ReadRune() //如果读取一个完整字符串用ReadString()
    if err != nil {
    	fmt.Println(err)
    }
    
    switch char {
    case 's':
    	fmt.Println("I'm is beijing");
    case 'm':
            fmt.Println("money");
    }

    二、 使用Bufio的Scanner方法

    通过创建一个scanner对象,然后通过os.Stdin来完成。如下代码

    func scanner() {
        scanner := bufio.NewScanner(os.Stdin)
        for scanner.Scan() {
            fmt.Println(scanner.Text())
        }
    }

    root