如何在C#中找到HHMMSSmmuuu格式的两个时间字符串之间的差异

本文关键字:两个 时间 字符串 之间 格式 HHMMSSmmuuu | 更新日期: 2023-09-27 18:26:54

我有两个HH:MM:SS:mmm:uuu格式的时间字符串。如何找到它们之间的差异(时间跨度)?

string t1="06:37:30:210:111";
string t2="06:38:32:310:222";

我想找出t2t1t2-t1)之间(在时间方面)的差异。

如何做到这一点?

如何在C#中找到HHMMSSmmuuu格式的两个时间字符串之间的差异

试试这个:

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);