将字符串转换为BigInteger

Ion*_*zău 11 c# string parsing biginteger type-conversion

我有以下代码创建一个非常大的数字(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);
Run Code Online (Sandbox Code Playgroud)

我知道,为了转换到int我们可以使用Convert.ToInt32和转换为long我们使用Convert.ToInt64,但是转换BigInteger为什么?

我怎样才能将string(代表一个非常长的数字)转换成BigInteger

Son*_*nül 16

使用BigInteger.Parse()方法.

将指定样式中数字的字符串表示形式转换为其BigInteger等效形式.

BigInteger bi = 2;
for(int i = 0; i < 1234; i++)
{
    bi *= 2;
}

var myBigIntegerNumber = bi.ToString();
Console.WriteLine(BigInteger.Parse(myBigIntegerNumber));
Run Code Online (Sandbox Code Playgroud)

您也可以BigInteger.TryParse(通过对话成功与否来检查方法.

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


prt*_*okz 6

BigInteger.Parse是您正在寻找的.