格式化TimeSpan对象始终显示00毫秒

时间:2015-07-19 18:22:08

标签: c# timespan

C#WinForms这里。

我需要从类似的字符串中提取秒和毫秒:" 13.9"其中13是秒和9毫秒。 要做到这一点,我使用String.Split()函数,并在我创建一个具有相应值的TimeSpan对象后(假设TimeString是" 13.9"):

private TimeSpan TimeSplit(string TimeString)
    {
        var Seconds = Int32.Parse(TimeString.Split('.')[0]); //output 13
        var Milliseconds = Int32.Parse(TimeString.Split('.')[1]); //output 9
        var ts = new TimeSpan(0, 0, 0, Milliseconds, Decimals);
        return ts;
    }

现在我需要使用TimeSpan来显示格式化输出:

TimeSpan TempTs = TimeSplit(output);
SetTextMP(TempTs.ToString(@"hh\:mm\:ss\.ff"));

我需要输出如下:hh:mm:ss.ff但在我的尝试毫秒(ff)保持固定为0.我检查了它们在那里..

1 个答案:

答案 0 :(得分:3)

正如评论中所述,这里的问题是因为9毫秒达到了0.009秒。使用格式说明符fff运行它会显示完整的毫秒值。