我有两个HH:MM:SS:mmm:uuu
格式的时间字符串。如何找到它们之间的差异(时间跨度)?
string t1="06:37:30:210:111";
string t2="06:38:32:310:222";
我想找出t2
和t1
( ) 之间的差异(就时间而言t2-t1
)。
这个怎么做?
尝试这个:
class Program
{
static void Main(string[] args)
{
string t1 = "06:37:30:210:111";
string t2 = "06:38:32:310:222";
var tp1 = TimeSpan.ParseExact(
t1.Remove(t1.LastIndexOf(":")),
@"hh\:mm\:ss\:FFFFFF",
CultureInfo.InvariantCulture);
var tp2 = TimeSpan.ParseExact(
t2.Remove(t2.LastIndexOf(":")),
@"hh\:mm\:ss\:FFFFFF",
CultureInfo.InvariantCulture);
Console.WriteLine(tp2 - tp1);
}
}
您应该将字符串转换为 DateTime 并使用 TimeSpan 计算差异
DateTime d1 = DateTime.Parse(t1);
DateTime d2 = DateTime.Parse(t2);
TimeSpan ts = d2.Subtract(d1);