将字符串转换为BigInteger

本文关键字:BigInteger 转换 字符串 | 更新日期: 2023-09-27 17:50:47

我有以下代码,创建一个非常大的数字(BigInteger),然后转换为string

// It's a console application.
BigInteger bi = 2;
for (int i = 0; i < 1234; i++)
{
   bi *= 2;
}
string myBigIntegerNumber = bi.ToString();
Console.WriteLine(myBigIntegerNumber);

我知道转换成int我们可以用Convert.ToInt32,转换成long我们用Convert.ToInt64,但是转换成BigInteger呢?

如何将string(表示一个非常非常长的数字)转换为BigInteger ?

将字符串转换为BigInteger

使用BigInteger.Parse()方法

将指定样式的数字的字符串表示形式转换为

BigInteger bi = 2;
for(int i = 0; i < 1234; i++)
{
    bi *= 2;
}
var myBigIntegerNumber = bi.ToString();
Console.WriteLine(BigInteger.Parse(myBigIntegerNumber));

您还可以检查BigInteger.TryParse()方法与您的对话是否成功。

尝试将数字的字符串表示形式转换为其等效BigInteger,并返回一个值,该值指示是否转换成功了。

这是另一种与BigInteger.Parse()相比更快的方法

public static BigInteger ToBigInteger(string value)
{
    BigInteger result = 0;
    for (int i = 0; i < value.Length; i++)
    {
        result = result * 10 + (value[i] - '0');
    }
    return result;
}