ZetCode

C# 字符串转 int 转换教程

最后修改于 2023 年 7 月 5 日

C# 字符串转 int 教程展示了如何将字符串转换为整数。我们可以使用 Convert 类的方法,例如 Convert.ToInt32Int32.ParseInt32.TryParse 来进行转换。

C# 字符串转 int 转换

字符串到整数的转换是一种类型转换或类型强制转换,其中字符串数据类型的实体被更改为整数类型。 这种类型的转换非常常见,因为我们从表单、命令行参数或数据库接收的值都是字符串,即使这些值是整数。

Convert.ToInt32 将对象转换为整数,如果该值为 null,则返回 0。Int32.ParseInt32.TryParse 方法也将字符串转换为整数。 它们之间的区别在于,如果解析操作失败,Int32.Parse 会抛出异常,而 Int32.TryParse 返回 false

对于其他数字类型,有等效的方法; 例如 Int64.TryParseDouble.Parse

使用 Convert.ToInt32 进行 C# 字符串转 int

Convert 类包含将基本数据类型转换为另一种基本数据类型的方法。

数字类型方法
decimalToDecimal
floatToSingle
doubleToDouble
showrt (译者注: 此处原文为拼写错误,应为short)ToInt16
intToInt32
longToInt64
ushortToUInt16
uintToUInt32
ulongToUInt64

该表列出了将字符串转换为各种整数数字类型的方法。 Convert.ToInt32 将指定的值转换为 32 位有符号整数。

Program.cs
string applesInBasket = "12";
string baskets = "4";

int total = Convert.ToInt32(applesInBasket) * Convert.ToInt32(baskets);

string msg = $"There are total of {total} apples";
Console.WriteLine(msg);

在此示例中,我们将两个最初作为字符串的整数值相乘。

int total = Convert.ToInt32(applesInBasket) * Convert.ToInt32(baskets);

我们转换字符串并计算表达式。

$ dotnet run
There are total of 48 apples

使用 Int32.Parse 进行 C# 字符串转 int

Int32.Parse 方法将数字的字符串表示形式转换为其等效的 32 位有符号整数。 如果转换失败,它会抛出一个异常。

Program.cs
string val = "23423453263456345";

try
{
    int num = Int32.Parse(val);

    Console.WriteLine($"Converted '{val}' to {num}.");
}
catch (FormatException)
{
    Console.WriteLine($"Unable to convert '{val}'.");
}
catch (OverflowException)
{
    Console.WriteLine($"'{val}' is out of range of the Int32 type.");
}

在此示例中,我们解析一个用字符串表示的非常大的数字。 由于该值无法转换为整数,因此会抛出 OverflowException

$ dotnet run
'23423453263456345' is out of range of the Int32 type.

使用 Int32.TryParse 进行 C# 字符串转 int

Int32.TryParse 方法将数字的字符串表示形式转换为其等效的 32 位有符号整数。 布尔返回值指示操作是否成功。 整数值传递给该方法的第二个 result 参数。

Program.cs
string val = "2342";

if (Int32.TryParse(val, out int j))
{
    Console.WriteLine(j);
} else {

    Console.WriteLine("String could not be parsed.");
}

该示例使用 Int32.TryPars 方法转换字符串。 if 条件检查该方法的返回值。

来源

字符串和字符串字面量

在本文中,我们展示了如何在 C# 中执行字符串到 int 的转换。

作者

我的名字是 Jan Bodnar,我是一位充满热情的程序员,拥有丰富的编程经验。 自 2007 年以来,我一直在撰写编程文章。 到目前为止,我已经撰写了超过 1,400 篇文章和 8 本电子书。 我拥有超过十年的编程教学经验。

列出所有 C# 教程