// Package message ----------------------------- // @file : common.go // @author : JJXu // @contact : wavingbear@163.com // @time : 2024/5/23 下午2:20 // ------------------------------------------- package message type CommonType []byte func (m CommonType) GetCmd() string { return readStrNumber(m, 0, 3) } func (m CommonType) GetMchId() string { return readStrNumber(m, 3, 8) } func (m CommonType) GetCtrID() string { return readStrNumber(m, 8, 11) } func (m CommonType) GetBody() string { return readString(m, 11, 512) } func (m CommonType) GetFull() string { return readString(m, 0, 512) } func readString(msg []byte, start, end int) string { var m string for i := start; i < end; i++ { if msg[i] == 0 { continue } else { m += string(msg[i]) } if len(msg) == i-1 { break } } return m } func readStrNumber(msg []byte, start, end int) string { var m string for i := start; i < end; i++ { if msg[i] == 0 || msg[i] == 48 { m += "0" } else { m += string(msg[i]) } if len(msg) == i-1 { break } } return m }