如何在 C# 中验证字符串是否为数字?
csharpserver side programmingprogramming更新于 2025/6/28 19:22:17
可以使用 int.TryParse 或 int.Parse 来验证包含数字的字符串。
如果 Int.Parse 无法将字符串解析为整数,则会抛出异常;而 Int.TryParse 则返回一个布尔值,指示解析是否成功。此外,Int.TryParse 有一个输出参数,其中包含解析后的字符串的值。
示例
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
string numberString = "123";
int number = 0;
if(int.TryParse(numberString, out number)) {
Console.WriteLine($"Try Parse Interger Number: {number}");
}
Console.WriteLine($"Parse Interger Number: {int.Parse(numberString)}");
Console.ReadLine();
}
}
}
输出
代码的输出是
Try Parse Interger Number: 123 Parse Interger Number: 123
在上面的例子中,由于 int.Tryparse 在 out 参数中除了解析后的字符串外,还返回了一个布尔值,因此 if 条件返回 true。此外,由于字符串包含正确的数字,int.Parse 也会返回整数值。
示例
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
string numberString = "A123";
int number = 0;
if(int.TryParse(numberString, out number)) {
Console.WriteLine($"Try Parse Interger Number: {number}");
}
elsem{
Console.WriteLine($"String doesnot have a proper number");
}
Console.ReadLine();
}
}
}
输出
上述代码的输出是
String doesnot have a proper number
由于字符串没有合适的数字,int.Tryparse 将返回 false,并执行代码的 else 部分。在相同情况下,int.Parse 将抛出如下所示的异常。
示例
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
string numberString = "A123";
Console.WriteLine($"Parse Interger Number: {int.Parse(numberString)}");
//异常:输入字符串的格式不正确。
}
}
}

