Forum Discussion

subhaD's avatar
subhaD
Contributor
7 years ago

Groovy Script convert string to integer

latest = "123123123"

int number = latest.toInteger()

 

I am trying to convert this string to integer, tried various options from internet.

I always get "java.lang.NumberFormatException", but not converting to integer

 

Let mw know any possible answers

  • Hi subhaD,

     

    The number which you mentioned in original post is different from the number for which you are getting error.

     

    So the solution for your problem is :

     

    Int datatype can only handle "2147483647" in groovy if you pass "2147483648" then it will give you the NumberFormatException Error

     

    You can use Long dataType which can handle "9223372036854775807" but if you think at some point of time your number will be bigger than this then you must use BigInteger which can handle "9223372036854775807"

     

    def latest = "4519021761189580"
    
    def number = latest.toLong()
    
    log.info number
    

     

    Click "Accept as Solution" if my answer has helped, and remember to give "kudos" :)

     

    Thanks and Regards,

    Himanshu Tayal

  • Hi subhaD,

     

    It's working fine for me.

     

    Can your share more details or screenshot where you are getting this error.

     

     

    Click "Accept as Solution" if my answer has helped, and remember to give "kudos" :)

     

    Thanks and Regards,

    Himanshu Tayal

    • subhaD's avatar
      subhaD
      Contributor

      Thanks so much for replying HimanshuTayal

       

      This is my exact script.

      I have converted CCN to string and then trying to make it an integer

       

      • HimanshuTayal's avatar
        HimanshuTayal
        Community Hero

        Hi subhaD,

         

        The number which you mentioned in original post is different from the number for which you are getting error.

         

        So the solution for your problem is :

         

        Int datatype can only handle "2147483647" in groovy if you pass "2147483648" then it will give you the NumberFormatException Error

         

        You can use Long dataType which can handle "9223372036854775807" but if you think at some point of time your number will be bigger than this then you must use BigInteger which can handle "9223372036854775807"

         

        def latest = "4519021761189580"
        
        def number = latest.toLong()
        
        log.info number
        

         

        Click "Accept as Solution" if my answer has helped, and remember to give "kudos" :)

         

        Thanks and Regards,

        Himanshu Tayal