"If at first you don't succeed; call it version 1.0" :-Unknown

Pages

Saturday, November 27, 2010

Difference between int.Parse and Convert.ToInt32

Both int.Parse and Convert.ToInt32 are used to convert string into the integer but Only difference between them is to Convert.ToInt32 handle null and returns ‘0’ as output and int.parse is not going to handle NULL and will give a Argument Null Exception. Here is the example for that both are almost same except handling null.

        string convertToInt = "12";
        string nullString = null;
        string maxValue = "32222222222222222222222222222222222";
        string formatException = "12.32";

        int parseResult;

        // It will perfectly convert interger
        parseResult = int.Parse(convertToInt);

        // It will raise Argument Null Exception
        parseResult = int.Parse(nullString);

        //It willl raise Over Flow Exception
        parseResult = int.Parse(maxValue);

        //It will raise Format Exception
        parseResult = int.Parse(formatException);


        //For Convert.ToInt32

        //It will perfectly convert integer
        parseResult = Convert.ToInt32(convertToInt);

        //It will ouput as 0 if Null string is there
        parseResult = Convert.ToInt32(nullString);

        //It will raise Over Flow Exception
        parseResult = Convert.ToInt32(maxValue);

        //It will raise Format Exception
        parseResult = Convert.ToInt32(formatException);

Hope this will help you understand the better but still there is third option available called int.TryParse which can handle all kind of exception and return result as Output Parameter.

Have a nice day... 'N happy Coding :)

No comments: