package hexutils import "github.com/sirupsen/logrus" func HexStrToHexList(hexStr string) []byte { var ok bool dst := make([]byte, len(hexStr)) for i, item := range []byte(hexStr) { dst[i], ok = FromHexChar(item) if !ok { logrus.Fatal("hex str 不合法:", hexStr) continue } } return dst } func FromHexChar(c byte) (byte, bool) { switch { case '0' <= c && c <= '9': return c - '0', true case 'a' <= c && c <= 'f': return c - 'a' + 10, true case 'A' <= c && c <= 'F': return c - 'A' + 10, true } return 0, false }