Konvertieren von [Größe]Byte in String in Go
Beim Arbeiten mit Byte-Arrays in Go kann es notwendig sein, diese in Strings zu konvertieren zur Weiterverarbeitung. Betrachten wir ein Beispiel, bei dem beim Versuch, ein von md5.Sum() erhaltenes Byte-Array mit einer bestimmten Größe in eine Zeichenfolge zu konvertieren, ein Fehler auftritt:
data := []byte("testing") var pass string var b [16]byte b = md5.Sum(data) pass = string(b)
Dieser Code führt zu folgendem Fehler:
cannot convert b (type [16]byte) to type string
Der Fehler tritt auf, weil das Byte-Array b eine feste Größe hat (16 Bytes), während für Go Zeichenfolgen variabler Länge erforderlich sind. Um dieses Problem zu beheben, können Sie b als Slice anstelle eines Arrays fester Größe bezeichnen:
pass = string(b[:])
Mithilfe der Slice-Syntax erstellen Sie eine neue Zeichenfolge, die die Bytes von b enthält, ohne eine feste Länge anzugeben . Das Ergebnis ist eine Zeichenfolge, die die Bytes effektiv darstellt. Mit diesem Ansatz können Sie ein Byte-Array beliebiger Größe in einen String in Go konvertieren.
Das obige ist der detaillierte Inhalt vonWie konvertiert man in Go ein Byte-Array mit fester Größe in einen String?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!