top button
Flag Notify
    Connect to us
      Facebook Login
      Site Registration Why to Join

Facebook Login
Site Registration

What is the difference between .TryParse and .Parse in C#?

+1 vote
54 views
What is the difference between .TryParse and .Parse in C#?
posted Mar 22, 2017 by Sunil

Share this question
Facebook Share Button Twitter Share Button Google+ Share Button LinkedIn Share Button Multiple Social Share Button

1 Answer

+1 vote

the main difference between int.Parse(), Convert.ToInt32() and int.TryParse().

int.Parse(string s)

Simply, int.Parse (string s) method converts the string to integer. If string s is null, then it will throw ArgumentNullException. If string s is other than integer value, then it will throw FormatException. If string s represents out of integer ranges, then it will throw OverflowException.

Example

//
// int.Parse(string s)
//

class Program
    {
        static void Main(string[] args)
        {
            string str1="9009";
            string str2=null;
            string str3="9009.9090800";
            string str4="90909809099090909900900909090909"; 
            int finalResult;
            finalResult = int.Parse(str1); //success
            finalResult = int.Parse(str2); // ArgumentNullException
            finalResult = int.Parse(str3); //FormatException
            finalResult = int.Parse(str4); //OverflowException 
        }
    } 

Convert.ToInt32(string s)

Simply, Convert.ToInt32(string s) method converts the string to integer. If string s is null, then it will return 0 rather than throw ArgumentNullException. If string s is other than integer value, then it will throw FormatException. If string s represents out of integer ranges, then it will throw OverflowException.

Example

//
// Convert.ToInt32(string s)
//

class Program
    {
        static void Main(string[] args)
        {
            string str1="9009";
            string str2=null;
            string str3="9009.9090800";
            string str4="90909809099090909900900909090909"; 
            int finalResult;
            finalResult = Convert.ToInt32(str1); // 9009
            finalResult = Convert.ToInt32(str2); // 0
            finalResult = Convert.ToInt32(str3); //FormatException
            finalResult = Convert.ToInt32(str4); //OverflowException 
        }
    }

int.TryParse(string s,Out)

Simply int.TryParse(string s,out int) method converts the string to integer out variable and returns true if successfully parsed, otherwise false. If string s is null, then the out variable has 0 rather than throw ArgumentNullException. If string s is other than integer value, then the out variable will have 0 rather than FormatException. If string s represents out of integer ranges, then the out variable will have 0 rather than throw OverflowException.

Example

//
// Convert.ToInt32(string s)
//

class Program
    {
        static void Main(string[] args)
        {
            string str1="9009";
            string str2=null;
            string str3="9009.9090800";
            string str4="90909809099090909900900909090909"; 
            int finalResult;
            bool output;
            output = int.TryParse(str1,out finalResult); // 9009
            output = int.TryParse(str2,out finalResult); // 0
            output = int.TryParse(str3,out finalResult); // 0
            output = int.TryParse(str4, out finalResult); // 0 
        }
    }

Finally, among all these methods, it is better to use int.TryParse(string s, out int) as this method is the best forever.

answer Mar 22, 2017 by Manikandan J
Contact Us
+91 9880187415
sales@queryhome.net
support@queryhome.net
#280, 3rd floor, 5th Main
6th Sector, HSR Layout
Bangalore-560102
Karnataka INDIA.
QUERY HOME
...