所以我有一個從 TCP 連接讀取值的函數(shù)。我想閱讀該行直到出現(xiàn)分隔符 '\b\r'。到目前為止我有func func1(someconnection net.Conn) string { c := bufio.NewReader(someconnection) buff1 := make([]byte, predefinedsizeofmessage) buff1, err := c.ReadBytes(byte('\r')) if err != nil { fmt.Printf("Connection closed") } message:= strings.Trim(string(buff1), delimiter) if len(message) == predefinedsizeofmessage { fmt.Printf("The message is in the wrong format") } fmt.Printf("The messageis: %s\n", message) return message}如果我在分隔符前讀到 \r ,這顯然是有問題的。我看過使用掃描儀的示例,但由于某種原因,客戶端在使用時會調用超時。也許,我沒有正確地實施掃描儀。
1 回答

牧羊人nacy
TA貢獻1862條經(jīng)驗 獲得超7個贊
僅支持單bufio.Reader
字節(jié)分隔符,您應該使用bufio.Scanner
帶有自定義拆分功能的工具來拆分多字節(jié)分隔符。
也許是https://stackoverflow.com/a/37531472/1205448的修改版本
- 1 回答
- 0 關注
- 118 瀏覽
添加回答
舉報
0/150
提交
取消