https://github.com/tarm/serial/blob/master/serial.go#L103
type StopBits byte
type Parity byte
type Config struct {
Name string
Baud int
ReadTimeout time.Duration
Size byte
Parity Parity
StopBits StopBits
}
我正在尝试标记命令行并填写配置结构体,但我无法弄清如何将int或string转换为单个字节?例如,长度为7。已尝试:
mysize := "7"
mysize[0]
但是 tarm/serial 告诉我 serial.Config 中有无效输入错误。
i, err := strconv.Atoi("7")
编译器报错,说我不能执行i.(byte)。唯一的解决办法是在配置结构体中硬编码
size: 7
。
byte(i)
或[]byte(string(i))
将int设置为byte。请参见https://dev59.com/e2Yr5IYBdhLWcg3w0taE#62737936。`strconv.Atoi(s)`和`byte(i)`将字符串设置为字节。请参见https://dev59.com/OVwZ5IYBdhLWcg3waPvX#62740786。`int(b)`或`int(b[0])`将字节设置为int。请参见https://dev59.com/CmIk5IYBdhLWcg3wfOSe#62725637。 - user12817546