Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Validate string là số trong C#

String chứa số validate bằng int.TryParse hoặc int.Parse.

Int.Parse ném exception nếu không parse được string thành integer, Int.TryParse trả về bool chỉ thành công hay không. Cũng có out parameter chứa giá trị parsed string.

Ví dụ hợp lệ

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 Integer: {number}");
            }
            Console.WriteLine($"Parse Integer: {int.Parse(numberString)}");
            Console.ReadLine();
        }
    }
}

Kết quả

Try Parse Integer: 123
Parse Integer: 123

Vì int.TryParse trả về boolean và parsed string trong out parameter, if condition trả true. int.Parse cũng trả integer value vì string chứa số đúng.

Ví dụ không hợp lệ

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 Integer: {number}");
            }
            else
            {
                Console.WriteLine("String không có số hợp lệ");
            }
            Console.ReadLine();
        }
    }
}

Kết quả

String không có số hợp lệ

String không có số hợp lệ, int.TryParse trả false, else block chạy. int.Parse sẽ ném exception:

Ví dụ int.Parse ném exception

using System;

namespace DemoApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string numberString = "A123";
            Console.WriteLine($"Parse Integer: {int.Parse(numberString)}");
            // Exception: Input string was not in correct format.
        }
    }
}