如何處理非常大的十六進位字串
當處理超出int64 限制的十六進位字串時,適當的解決方案是使用數學/大包。此套件提供處理大於 64 位元的數字的功能。
範例:
考慮十六進位字串 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 方法將十六進位字串轉換為 big.Int,然後使用 Float64 方法取得其十進位表示。然後將十進制值編組為 JSON 字串。
以上是如何處理大於int64的十六進位字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!