none
Como verificar se o valor é do tipo INTEGER

    Question

  • Olá pessoal...

     

    Gostaria de verificar se um valor é inteiro, mas nesse valor posso passar qualquer tipo de dado.

    Exemplo

    12ab3, gostaria de saber se este valor é um Int.

    2000000000010, gostaria de saber se este valor é um Int..

    123, gostaria de saber se este valor é um Int.

     

    Gostaria de fazer isso através de uma função, exemplo o comando IsDate.

    Exemplo:

    se colocar  isdate(12ab3) ele retorna FALSE,

    se colocar isdate(22/01/09) ele retorna TRUE

     

    Obrigado

     

    Thursday, January 22, 2009 7:19 PM

Answers


  • Ola,

      Um exemplo ..bem simples...;

        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

              MsgBox(IsInt(TextBox3.Text).ToString)

        End Sub

        ''' <summary>
        ''' Verifica se um valor é um tipo numerico
        ''' </summary>
        ''' <param name="texto">Uma string com o valor a ser verificado</param>
        ''' <returns>true se o valor for numerico , false se nao for numerico</returns>
        ''' <remarks></remarks>
        Private Function IsInt(ByVal texto As String) As Boolean
            Try

                Convert.ToInt32(texto)
                Return True
            Catch ex As Exception
                Return False

            End Try
        End Function



    É claro que se vc chamasse essa 'funçao ' passando um valor 'double' ela retornaria true ..mesmo um double nao sendo um int..

      a++
    Thursday, January 22, 2009 9:40 PM
  • Use o método TryParse() da estrutura Int32:

     

    Dim ret As Boolean = False
    Dim valor As Integer
    
    ret = Integer.TryParse("123,00", valor)
    
    MessageBox.Show("O valor é um inteiro?: " & ret.ToString())
    
    ret = Integer.TryParse("123", valor)
    
    MessageBox.Show("O valor é um inteiro?: " & ret.ToString())

     

     

     

     

    Thursday, January 22, 2009 9:52 PM

All replies


  • Ola,

      Um exemplo ..bem simples...;

        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

              MsgBox(IsInt(TextBox3.Text).ToString)

        End Sub

        ''' <summary>
        ''' Verifica se um valor é um tipo numerico
        ''' </summary>
        ''' <param name="texto">Uma string com o valor a ser verificado</param>
        ''' <returns>true se o valor for numerico , false se nao for numerico</returns>
        ''' <remarks></remarks>
        Private Function IsInt(ByVal texto As String) As Boolean
            Try

                Convert.ToInt32(texto)
                Return True
            Catch ex As Exception
                Return False

            End Try
        End Function



    É claro que se vc chamasse essa 'funçao ' passando um valor 'double' ela retornaria true ..mesmo um double nao sendo um int..

      a++
    Thursday, January 22, 2009 9:40 PM
  • Use o método TryParse() da estrutura Int32:

     

    Dim ret As Boolean = False
    Dim valor As Integer
    
    ret = Integer.TryParse("123,00", valor)
    
    MessageBox.Show("O valor é um inteiro?: " & ret.ToString())
    
    ret = Integer.TryParse("123", valor)
    
    MessageBox.Show("O valor é um inteiro?: " & ret.ToString())

     

     

     

     

    Thursday, January 22, 2009 9:52 PM