我想在字符串中顯示兩個日期之間的耗用時間。使用TimeSpan上的String.Format輸出完整秒數而不輸入毫秒
比方說,我有以下代碼:
DateTime date1 = DateTime.Now();
System.Threading.Thread.Sleep(2500);
DateTime date2 = DateTime.Now();
TimeSpan elapsed = date2.substract(date1);
Console.WriteLine("> {0:hh:mm:ss}", elapsed);
我期待什麼:
> 00:00:03
我能得到什麼:
> 00:00:02.5002500
有沒有使用String的方式。格式化功能只返回完整的秒數?
我也試圖與刪除小數位:
elapsed = elapsed.Substract(TimeSpan.FromMiliseconds((double)Timespan.Miliseconds);
但是,這並不工作,要麼因爲elapsed.Miliseconds返回500作爲一個整數。
一個很好的解決方案,太(可能是最有效的有關業績)。 – 2010-08-23 10:41:48
可能只是用0秒的片段創建了一個新的TimeSpan,然後打印出一個。 「g」格式與CultureInfo.InvariantCulture一起應該可以正常工作 – 2016-05-15 21:33:50