如何在GO语言中将用户键入的信息导入 time.Parse语句中?

Python012

如何在GO语言中将用户键入的信息导入 time.Parse语句中?,第1张

你已经使用了“fmt.Sprintf("2020-%d-%d",month,day)”进行了合适化,而fmt.Sprintf函数会返回格式化的字符,直接将格式化的字符串放到time.parse高数的第二个参数位置不就好了。

编写命令行程序时,可以使用任何接受io.Reader的函数从os.Stdin中读取用户输入。

最方便的方法是使用fmt.Scanf,它是fmt.Printf的镜像。

这是从控制台(标准输入)读取字符串和整数的方法

fmt.Scanf从os.Stdin读取输入,并尝试根据提供的格式设置传递的变量。

空格和换行符被视为值分隔符。

它返回成功解析的数量(防止仅匹配前几个变量)

要从任意io.Reader中读取,请使用fmt.Fscanf。

要读取整行(直到换行符或io.EOF,请使用fmt.Scanln:

您也可以使用bufio.Reader:

ReadString从读取器读取,直到读取给定字符。 我们指定了换行符\n,因此它将读取整行。

ReadString返回的值包含终止字符(\n),因此通常您希望使用例如。 strings.TrimSpace。

字符\n是Unix上的行终止符。 在Windows上更常见的是将\r\n视为行终止符。 如果希望在Windows上运行,请确保进行处理(例如,通过从返回的字符串中修剪\r字符)。

也可以使用bufio.Scanner从stdin读取行

bufio.Scanner允许使用更复杂的用法,您可以指定使用Scanner.Split将输入拆分成块的函数。