Pergunta

Alguém pode me dizer por que:

var nl = Convert.ToInt64("17029268.1650117");

falhar, e em vez disso você tem que fazer isso:

var nl = Convert.ToInt64(Convert.ToDouble("17029268.1650117"));

Porque parece tão estúpido!

Foi útil?

Solução

Você provavelmente deve também usar long.Parse (str)

Uma longa é um número inteiro, então você não pode ter decimais cara. (Tentei te dizer no twitter :))

Outras dicas

O manual do diz:

FormatException:

valor não consiste em um sinal opcional seguido por uma seqüência de dígitos (de zero a nove).

e uma . não está na a sequence of digits .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top