Por favor, explique essa exceção Convert.ToInt64 InputStringFormat
-
20-08-2019 - |
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!
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