hexadecimal convert c# biginteger valueconverter

convert - hex string to int c#



Hex para int C#con nĂºmeros muy grandes (2)

Utilice BigInteger para almacenar el número. Para obtenerlo, use BigInteger.Parse con un valor NumberFlags donde se establece el AllowHexSpecifier . (Como NumberFlags.HexNumber )

Tengo una cadena larga de 256 caracteres que contiene un valor hexadecimal:

EC851A69B8ACD843164E10CFF70CF9E86DC2FEE3CF6F374B43C854E3342A2F1AC3E30C741CC41E679DF6D07CE6FA3A66083EC9B8C8BF3AF05D8BDBB0AA6CB3EF8C5BAA2A5E531BA9E28592F99E0FE4F95169A6C63F635D0197E325C5EC76219B907E4EBDCD401FB1986E4E3CA661FF73E7E2B8FD9988E753B7042B2BBCA76679

Quiero convertirlo en una cadena con números como este:

102721434037452409244947064576168505707480035762262934026941212181473785225928879178124028140134582697986427982801088884553965371786856967476796072433168989860379885762727214550528198941038582937788145880903882293999022181847665735412629158069472562567144696160522107094738216218810820997773451212693036210879

¿Cómo se puede hacer con números tan grandes?

Gracias por adelantado.


Utilice BigInteger . Específicamente, puede usar BigInteger.Parse para analizar la representación hexadecimal de una instancia de BigInteger (use NumberStyles.HexNumber ), y luego BigInteger.ToString para obtener la representación decimal.

var number = BigInteger.Parse( "EC851A69B8ACD843164E10CFF70CF9E86DC2FEE3CF6F374B43C854E3342A2F1AC3E30C741CC41E679DF6D07CE6FA3A66083EC9B8C8BF3AF05D8BDBB0AA6CB3EF8C5BAA2A5E531BA9E28592F99E0FE4F95169A6C63F635D0197E325C5EC76219B907E4EBDCD401FB1986E4E3CA661FF73E7E2B8FD9988E753B7042B2BBCA76679", NumberStyles.HexNumber ); var s = number.ToString();