Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Int32.Parse Method (String)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Converts the string representation of a number to its 32-bit signed integer equivalent.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public static int Parse(
	string s


Type: System.String

A string containing a number to convert.

Return Value

Type: System.Int32

A 32-bit signed integer equivalent to the number contained in s.

Exception Condition

s is null.


s is not in the correct format.


s represents a number less than MinValue or greater than MaxValue.

The s parameter contains a number of the form:


Items in square brackets ([ and ]) are optional. The following table describes each element.




Optional white space.


An optional sign.


A sequence of digits ranging from 0 to 9.

The s parameter is interpreted using the NumberStyles.Integer style. In addition to decimal digits, only leading and trailing spaces together with a leading sign are allowed. To explicitly define the style elements that can be present in s, use either the Int32.Parse(String, NumberStyles) or the Int32.Parse(String, NumberStyles, IFormatProvider) method.

The s parameter is parsed using the formatting information in a NumberFormatInfo object initialized for the current system culture. For more information, see CurrentInfo. To parse a string using the formatting information of some other culture, use the Int32.Parse(String, NumberStyles, IFormatProvider) method.

The following example demonstrates how to convert a string value into a 32-bit signed integer value using the Int32.Parse(String) method. The resulting integer value is then displayed to the console.

using System;

public class Example
   public static void Main()
      string[] values = { "+13230", "-0", "1,390,146", "$190,235,421,127",
                          "0xFA1B", "163042", "-10", "007", "2147483647", 
                          "2147483648", "16e07", "134985.0", "-12034",
                          "-2147483648", "-2147483649" };
      foreach (string value in values)
         try {
            int number = Int32.Parse(value); 
            Console.WriteLine("{0} --> {1}", value, number);
         catch (FormatException) {
            Console.WriteLine("{0}: Bad Format", value);
         catch (OverflowException) {
            Console.WriteLine("{0}: Overflow", value);   
// The example displays the following output:
//       +13230 --> 13230
//       -0 --> 0
//       1,390,146: Bad Format
//       $190,235,421,127: Bad Format
//       0xFA1B: Bad Format
//       163042 --> 163042
//       -10 --> -10
//       007 --> 7
//       2147483647 --> 2147483647
//       2147483648: Overflow
//       16e07: Bad Format
//       134985.0: Bad Format
//       -12034 --> -12034
//       -2147483648 --> -2147483648
//       -2147483649: Overflow      

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
© 2017 Microsoft