2010-07-29 5 views
1

У меня есть большое количество текстовых строк (20 символов, без десятичных знаков), которые необходимо преобразовать в число. Я попробовал Convert.ToInt64, но значение слишком велико. Каков наилучший метод конверсии для большого числа? И каково фактическое максимальное значение для Convert.ToInt64()?Проблема с большим числовым значением.

Благодаря

ответ

1

Int64 поддерживает номера из -9,223,372,036,854,775,808 через 9,223,372,036,854,775,807.

Вы можете увеличить размер с помощью UInt64 (до 18,446,744,073,709,551,615).

Если вам нужно больше, лучше всего использовать BigInteger, с BigInteger.TryParse вместо Convert.ToXXX. BigInteger поддерживает сколь угодно большие целочисленные значения, поэтому размер может быть как можно большим.

+0

@Reed ... Отлично. Благодаря! Это прекрасно ... Я сделаю BigInteger. – MikeTWebb

+0

@MikeTWebb: Идеально для этого - просто осознайте, что это .NET 4 (не знаю, имеет ли это значение для вас). Если вы .NET 2/3.5, вам понадобится специальный класс BigInteger, например этот: http://www.codeproject.com/KB/cs/BigInteger_Library.aspx –

+0

@Reed .... да, мы используют .Net 3.5, поэтому мне нужно реализовать этот класс. Сладкая статья. еще раз спасибо – MikeTWebb

Смежные вопросы