我需要解析可能无效或包含一些错误的 UDP 数据包。我想.在字节到字符串转换后替换无效字符,以显示数据包的内容。
我该怎么做?这是我的代码:
func main() {
a := []byte{'a', 0xff, 0xaf, 'b', 0xbf}
s := string(a)
s = strings.Replace(s, string(0xFFFD), ".", 0)
fmt.Println("s: ", s) // I would like to display "a..b."
for _, r := range s {
fmt.Println("r: ", r)
}
rs := []rune(s)
fmt.Println("rs: ", rs)
}
Run Code Online (Sandbox Code Playgroud) 我有一个Linux嵌入式系统。我可以使用 shell 命令管理 I/O。此命令更改 GPIO #48 的状态:
/sys/class/gpio# echo 48 > /sys/class/gpio/export
/sys/class/gpio# echo out > /sys/class/gpio/gpio48/direction
/sys/class/gpio# echo high > /sys/class/gpio/gpio48/direction
/sys/class/gpio# echo low > /sys/class/gpio/gpio48/direction
Run Code Online (Sandbox Code Playgroud)
如何使用 Goland 有效管理 I/O?是否可以在不通过 shell 命令的情况下管理它们?