在C#中将时间分割为两个变量

Tom*_*ten 2 .net c# time split

我想知道如何将时间分成两个变量.

我得到这样的时间

string myTime = Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

如果我在12:14输入,我怎么能在一个变量中得到12而在另一个变量中得到14?

Fre*_*örk 9

将它解析为a TimeSpan并以这种方式拉出部分:

TimeSpan ts = TimeSpan.Parse("12:14");
int hours = ts.Hours;
int minutes = ts.Minutes;
Run Code Online (Sandbox Code Playgroud)

使用的另一个好处TimeSpan是它也可以为您验证.特别是当与TryParse方法配对时,这可以产生高度可靠的代码:

TimeSpan ts;
if (TimeSpan.TryParse("12:99", out ts))
{
    // the string is a valid time, use it
}
else
{
    // the string is not a valid time, handle that scenario
}
Run Code Online (Sandbox Code Playgroud)