Compartir a través de


Cómo: Convertir una cadena en un valor int (Guía de programación de C#)

Actualización: noviembre 2007

En estos ejemplos se muestran distintas formas de convertir una cadena en un valor int. Este tipo de conversión puede resultar útil, por ejemplo, al obtener la entrada numérica de un argumento de línea de comandos. Existen métodos similares para convertir las cadenas en otros tipos numéricos, como float o long. En la siguiente tabla se muestran algunos de esos métodos.

Tipo numérico

Método

decimal

ToDecimal(String)

float

ToSingle(String)

double

ToDouble(String)

short

ToInt16(String)

long

ToInt64(String)

ushort

ToUInt16(String)

uint

ToUInt32(String)

ulong

ToUInt64(String)

Ejemplo

Este ejemplo llama al método ToInt32(String) para convertir la cadena "29" en int. Después, suma 1 al resultado e imprime la salida.

int numVal = Convert.ToInt32("29");
numVal++;

Console.WriteLine(numVal);
// Output: 30

Otra forma de convertir string en int es mediante los métodos Parse o TryParse de la estructura System.Int32. El método ToUInt32 utiliza Parse internamente. Si el formato de la cadena no es válido, Parse produce una excepción, mientras que TryParse no produce ninguna excepción, pero devuelve false. En los siguientes ejemplos se muestran llamadas correctas e incorrectas a Parse y TryParse.

int numVal = Int32.Parse("-105");
Console.WriteLine(numVal);
// Output: -105
int j;
Int32.TryParse("-105", out j);
Console.WriteLine(j);
// Output: -105
try
{
    int m = Int32.Parse("abc");
}
catch (FormatException e)
{
    Console.WriteLine(e.Message);
}
// Output: Input string was not in a correct format.
string inputString = "abc";
int numValue;
bool parsed = Int32.TryParse(inputString, out numValue);

if (!parsed)
    Console.WriteLine("Int32.TryParse could not parse '{0}' to an int.\n", inputString);

// Output: Int32.TryParse could not parse 'abc' to an int.

Vea también

Tareas

Cómo: Determinar si una cadena representa un valor numérico (Guía de programación de C#)

Referencia

Tipos (Guía de programación de C#)