http://play.golang.org/p/SKtaPFtnKOGolang: von [] Bytes hexadezimal zu bekommen
func md(str string) []byte {
h := md5.New()
io.WriteString(h, str)
fmt.Printf("%x", h.Sum(nil))
// base 16, with lower-case letters for a-f
return h.Sum(nil)
}
Alles was ich brauche Hash-Schlüsselzeichenfolge ist, die aus einer Eingabezeichenfolge umgewandelt wird. Ich konnte es im Byte-Format mit h.Sum (nil) erhalten und den Hash-Schlüssel im% x Format ausdrucken. Aber ich möchte das% x-Format von dieser Funktion zurückgeben, damit ich es verwenden kann, um die E-Mail-Adresse in den Hash-Schlüssel zu konvertieren und damit auf Gravatar.com zuzugreifen.
Wie bekomme ich% x Format Hash-Schlüssel mit MD5-Funktion in Go?
Danke,
[hex.EncodeToString] (http://golang.org/pkg/encoding/hex/#EncodeToString) ist wahrscheinlich etwas effizienter (keine Reflektion usw.). –
Danke.Ich aktualisierte die Antwort – fabrizioM
'hex.EncodeToString' ist etwa 5x schneller als' fmt' in meinem Benchmarking –