[C#] 一個可以超越 Decimal 的物件 - BigInteger

2022-10-31

最近在碰到一些數字超過  C# 的 Decimal 的極限了,後來我查一下,原來還有一個東西叫做 BigInteger 

看起來可以解決我要的問題,所以順手作了一些筆記,想說就記錄一下..



這邊案例我有一個數字,123467890123467890123467890123467890123467890123467890123467890123467890123467890123467890123467890123467890

夠長了吧,這鬼東西要怎麼念可以參考 這裡 ,這邊就不贅述了

接下來就是程式碼的部分,這裡面有包含轉 HEX 全小寫,之後再將 HEX 轉回十進位


我都寫在程式碼註解了,中間有一個關鍵就是都會有一個 0 要去判斷正負,所以要不要移除這就是要看你了

Result:

DEC => HEX:

0d755e029f7a371304e2191353fa3b1acf71e3186c5b8bef42e4bc83809f9efbf6d75a3319b8a871190e81ec72

DEC => HEX(remove prefix 0):

d755e029f7a371304e2191353fa3b1acf71e3186c5b8bef42e4bc83809f9efbf6d75a3319b8a871190e81ec72

HEX => DEC

123467890123467890123467890123467890123467890123467890123467890123467890123467890123467890123467890123467890

HEX => DEC(remove prefix 0):

-23316021299896686619624647175865674087512269183302101795737795597295173946195137593013297275580153816028046



當麻許的超技八 2014 | Donma Hsu Design.