C# 字符串转 int 转换教程
最后修改于 2023 年 7 月 5 日
C# 字符串转 int 教程展示了如何将字符串转换为整数。我们可以使用 Convert 类的方法,例如 Convert.ToInt32、Int32.Parse 和 Int32.TryParse 来进行转换。
C# 字符串转 int 转换
字符串到整数的转换是一种类型转换或类型强制转换,其中字符串数据类型的实体被更改为整数类型。 这种类型的转换非常常见,因为我们从表单、命令行参数或数据库接收的值都是字符串,即使这些值是整数。
Convert.ToInt32 将对象转换为整数,如果该值为 null,则返回 0。Int32.Parse 和 Int32.TryParse 方法也将字符串转换为整数。 它们之间的区别在于,如果解析操作失败,Int32.Parse 会抛出异常,而 Int32.TryParse 返回 false。
对于其他数字类型,有等效的方法; 例如 Int64.TryParse 或 Double.Parse。
使用 Convert.ToInt32 进行 C# 字符串转 int
Convert 类包含将基本数据类型转换为另一种基本数据类型的方法。
| 数字类型 | 方法 |
|---|---|
| decimal | ToDecimal |
| float | ToSingle |
| double | ToDouble |
| showrt (译者注: 此处原文为拼写错误,应为short) | ToInt16 |
| int | ToInt32 |
| long | ToInt64 |
| ushort | ToUInt16 |
| uint | ToUInt32 |
| ulong | ToUInt64 |
该表列出了将字符串转换为各种整数数字类型的方法。 Convert.ToInt32 将指定的值转换为 32 位有符号整数。
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 位有符号整数。 如果转换失败,它会抛出一个异常。
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 参数。
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 的转换。
作者
列出所有 C# 教程。