非常に大きな 16 進文字列を処理する方法
int64 の制限を超える 16 進文字列を扱う場合、適切な解決策は、数学/大きなパッケージ。このパッケージは、64 ビットを超える数値を処理するための機能を提供します。
例:
16 進文字列 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)) }
このコードSetString メソッドを使用します16 進数の文字列を big.Int に変換し、Float64 メソッドを使用してその 10 進数表現を取得します。その後、10 進数値が JSON 文字列にマーシャリングされます。
以上がint64 より大きい 16 進文字列を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。