我有以下代码创建一个非常大的数字(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
?< / p>
如何将string
(代表非常长的数字)转换为BigInteger
?
答案 0 :(得分:14)
使用BigInteger.Parse()
方法。
将指定样式中数字的字符串表示形式转换为 它的BigInteger等价物。
BigInteger bi = 2;
for(int i = 0; i < 1234; i++)
{
bi *= 2;
}
var myBigIntegerNumber = bi.ToString();
Console.WriteLine(BigInteger.Parse(myBigIntegerNumber));
您也可以在对话成功与否的情况下查看BigInteger.TryParse(
)方法。
尝试将数字的字符串表示形式转换为它 BigInteger等效,并返回一个指示是否为的值 转换成功。
答案 1 :(得分:6)
BigInteger.Parse正是您要找的。 p>
答案 2 :(得分:0)
与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;
}