Prizes & Awards
My Profile
Active Members
TodayLast 7 Days
more...
|
Resources » Articles » .NET Framework »
Difference among Int32.Parse(), Convert.ToInt32(), and Int32.TryParse()
|
Int32.parse(string) ------------------------- Int32.Parse (string s) method converts the string representation of a number to its 32-bit signed integer equivalent. When s is null reference, it will throw ArgumentNullException. If s is other than integer value, it will throw FormatException. When s represents a number less than MinValue or greater than MaxValue, it will throw OverflowException.
Example: ------------------ string s1 = "1234"; string s2 = "1234.65"; string s3 = null; string s4 = "123456789123456789123456789123456789123456789";
int result; bool success;
result = Int32.Parse(s1); //-- 1234 result = Int32.Parse(s2); //-- FormatException result = Int32.Parse(s3); //-- ArgumentNullException result = Int32.Parse(s4); //-- OverflowException
Convert.ToInt32(string) ---------------------------------- Convert.ToInt32(string s) method converts the specified the string representation of 32-bit signed integer equivalent. This calls in turn Int32.Parse () method. When s is null reference, it will return 0 rather than throw ArgumentNullException If s is other than integer value, it will throw FormatException. When s represents a number less than MinValue or greater than MaxValue, it will throw OverflowException
Example: result = Convert.ToInt32(s1); //-- 1234 result = Convert.ToInt32(s2); //-- FormatException result = Convert.ToInt32(s3); //-- 0 result = Convert.ToInt32(s4); //-- OverflowException
Int32.TryParse(string, out int) --------------------------------------------- Int32.Parse(string, out int) method converts the specified the string representation of 32-bit signed integer equivalent to out variable, and returns true if it parsed successfully, false otherwise. This method is available in C# 2.0 When s is null reference, it will return 0 rather than throw ArgumentNullException. If s is other than integer value, the out variable will have 0 rather than FormatException. When s represents a number less than MinValue or greater than MaxValue, the out variable will have 0 rather than OverflowException.
Example:- ------------- success = Int32.TryParse(s1, out result); //-- success => true; result => 1234 success = Int32.TryParse(s2, out result); //-- success => false; result => 0 success = Int32.TryParse(s3, out result); //-- success => false; result => 0 success = Int32.TryParse(s4, out result); //-- success => false; result => 0
Convert.ToInt32 is better than Int32.Parse, since it return 0 rather than exception. But, again according to the requirement this can be used. TryParse will be best since it handles exception itself always.
|
Responses
|
No responses found. Be the first to respond and make money from revenue sharing program.
|
|