如何在 Golang 中设置文本输入的初始值?

Posted

技术标签:

【中文标题】如何在 Golang 中设置文本输入的初始值?【英文标题】:How to set inital value of text input in Golang? 【发布时间】:2018-04-16 19:43:28 【问题描述】:

我知道您可以通过执行以下操作来调用用户的文本输入:

fmt.Print("Enter text: ")
reader := bufio.NewReader(os.Stdin)
text, _ := reader.ReadString('\n')

会输出:

Enter text:

但是有没有办法为这个输入设置一个用户可以编辑的初始值。例如,如果初始值设置为“english”,那么输出将是:

Enter text: english

【问题讨论】:

【参考方案1】:

我的建议是将默认值放在提示符中:

def := "english"
fmt.Printf("Enter text (%s): ", def)
reader := bufio.NewReader(os.Stdin)
text, _ := reader.ReadString('\n')
text = strings.TrimSuffix(text, "\n")
if text == "" 
    text = def

【讨论】:

这不会设置输入文本的初始值。我的目标是让它在运行时就像已经输入了“英语”这个词 我不知道怎么做,所以我想分享一下我看到的其他命令行应用程序处理默认值场景的方式。

以上是关于如何在 Golang 中设置文本输入的初始值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在输入文本中设置唯一可能的值

如何在 TinyMCE 文本区域中设置初始文本?

如何从 golang 程序中设置 ulimit -n?

如何根据父对话框中设置的变量在子 MFC 对话框中显示值?

如何以编程方式在 JavaFX ComboBox 中设置字符串值

如何在来自数据库的文本框中设置逗号分隔值?