Comment gérer des chaînes hexadécimales extraordinairement volumineuses
Lorsque vous travaillez avec des chaînes hexadécimales qui dépassent les limites de int64, la solution appropriée consiste à utiliser le mathématiques/gros paquet. Ce package fournit des fonctionnalités pour traiter les nombres supérieurs à 64 bits.
Exemple :
Considérez la chaîne hexadécimale 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)) }
Ce code utilise la méthode SetString pour convertir le chaîne hexadécimale dans un big.Int, puis obtient sa représentation décimale à l'aide de la méthode Float64. La valeur décimale est ensuite marshalée dans une chaîne JSON.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!