我希望在輸出中顯示「天(s)」一詞。我試圖在「天」前的所有字符和空格前放置「 - 」前面的轉義字符。任何想法或指針。c#自定義日期格式
這是我的工作線路,totalTimeInRoom是一個時間跨度:
totalTimeInRoom.ToString(@"dd\.hh\:mm\:ss");
編輯: 只是嘗試這樣做,沒有運氣:
totalTimeInRoom.ToString(@"dd \"Days(s)\" \- hh\:mm\:ss");
我希望在輸出中顯示「天(s)」一詞。我試圖在「天」前的所有字符和空格前放置「 - 」前面的轉義字符。任何想法或指針。c#自定義日期格式
這是我的工作線路,totalTimeInRoom是一個時間跨度:
totalTimeInRoom.ToString(@"dd\.hh\:mm\:ss");
編輯: 只是嘗試這樣做,沒有運氣:
totalTimeInRoom.ToString(@"dd \"Days(s)\" \- hh\:mm\:ss");
我這個奮鬥之前,總是結束了「作弊」使用的String.Format:
// extend with minutes, seconds etc. if needed
var text = String.Format ("{0} day(s), {1} hour(s)", totalTimeInRoom.Days, totalTimeInRoom.Hours);
當然,你可以把更先進,更只顯示「天」,如果確實有1個或更多在時間跨度天也,而不是無條件地使用「天(S)」,你可以動態追加一個「s」時的天數不工作超過1
正如所解釋的here,您可以使用單引號字符在您的自定義日期格式中嵌入文字字符串:
totalTimeInRoom.ToString("dd' Day(s) 'hh':'mm':'ss");
那。他使用的是TimeSpan – Magnus 2011-05-30 14:36:18
@Magnus,它可以處理單引號字符。查看我更新的答案中的鏈接。 – 2011-05-30 14:39:09
我認爲你需要'(s)'之後和'''之前的空間,而不是'hh'之前的空間。例如'totalTimeInRoom.ToString(「dd'Day(s)'hh':'mm':'ss')' – IndigoDelta 2011-05-30 14:39:47
真棒,謝謝!我會在8分鐘內回答。感謝您的幫助。 – rd42 2011-05-30 14:37:59