Wie man mit außergewöhnlich großen hexadezimalen Zeichenfolgen umgeht
Wenn Sie mit hexadezimalen Zeichenfolgen arbeiten, die die Grenzen von int64 überschreiten, ist die geeignete Lösung die Verwendung von Mathe/großes Paket. Dieses Paket bietet Funktionalitäten für den Umgang mit Zahlen größer als 64 Bit.
Beispiel:
Betrachten Sie die hexadezimale Zeichenfolge 0x000000d3c21bcecceda1000000.
package main import ( "encoding/json" "fmt" "math/big" ) func main() { hexString := "0x000000d3c21bcecceda1000000" bigInt := big.NewInt(0) bigInt.SetString(hexString, 16) decimal, ok := bigInt.Float64() if !ok { // Handle error } fmt.Println(decimal) result, err := json.Marshal(decimal) if err != nil { // Handle error } fmt.Println(string(result)) }
Dieser Code verwendet die SetString-Methode zum Konvertieren hexadezimale Zeichenfolge in ein big.Int und erhält dann seine Dezimaldarstellung mithilfe der Float64-Methode. Der Dezimalwert wird dann in einen JSON-String gemarshallt.
Das obige ist der detaillierte Inhalt vonWie verarbeite ich Hexadezimalzeichenfolgen, die größer als int64 sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!