Pergunta

Como você pode verificar se um string é conversível para um int?

Vamos dizer que nós temos dados como "House", "50", "cão", "45,99", eu quero saber se eu deveria usar apenas o string ou usar o analisado int valor em vez.

Em JavaScript tivemos esta função parseInt (). Se a seqüência de não pôde ser analisado , seria voltar NaN .

Foi útil?

Solução

Int32.TryParse(String, Int32) - http://msdn.microsoft.com/en-us/ biblioteca / f02979c7.aspx

  bool result = Int32.TryParse(value, out number);
  if (result)
  {
     Console.WriteLine("Converted '{0}' to {1}.", value, number);         
  }

Outras dicas

Você não poderia torná-lo um pouco mais elegante, executando o direito TryParse para o caso?

Assim:

if (Int32.TryParse(value, out number))     
  Console.WriteLine("Converted '{0}' to {1}.", value, number);

Int.TryParse

encontrado isso em um dos resultados da pesquisa: como posso identificar se uma string é um número?

Adicionando este uso porque as respostas que eu vi antes não tinha:

int n;
bool isNumeric = int.TryParse("123", out n);

aqui "123" pode ser algo como s = "123" string que o OP está testando eo valor n terá um valor (123) após a chamada, se for encontrado para ser numérico.

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