我通常有這樣的好方法在Excel中使用簡單細胞的自定義格式[HH]正常數字格式轉換到小時和分鐘格式:毫米果然出這樣的:格式的時間[HH]:mm格式
現在,我似乎無法找到一個類似的在Visual Basic 2010或SQL 2000中要做到這一點所以沒有任何一個的方式做到這一點知道的。 在此先感謝。
注:在的括號[ HH ]:毫米是保持小時圖從每24小時一圈後四捨五入爲0。
我通常有這樣的好方法在Excel中使用簡單細胞的自定義格式[HH]正常數字格式轉換到小時和分鐘格式:毫米果然出這樣的:格式的時間[HH]:mm格式
現在,我似乎無法找到一個類似的在Visual Basic 2010或SQL 2000中要做到這一點所以沒有任何一個的方式做到這一點知道的。 在此先感謝。
注:在的括號[ HH ]:毫米是保持小時圖從每24小時一圈後四捨五入爲0。
試試這個:
Public Function FormatHoursAndMinutes(totalMinutes As Integer) As String
Dim span As TimeSpan = TimeSpan.FromMinutes(totalMinutes)
Return String.Format("{0:00}:{1:00}", CInt(Math.Floor(span.TotalHours)), span.Minutes)
End Function
是的,謝謝我試過但它不能正常工作你知道我寫的時間是1.5小時我需要的是這個結果1:30當你的函數給了我另一個結果時,我欣賞直接的方式雖然非常感謝,但給出了答案。 –
糟糕。忘了把它放下來。我通過添加'Math.Floor'來修復它。 –
非常感謝你,雖然24小時內它不工作,但它只是回到零,即24.5小時= 00:30使用你的功能。 –
這聽起來像你想有一個TimeSpan並使用FromMinutes方法來構建它。
然後,您可以使用.ToString()
或其重載之一格式化TimeSpan
進行顯示。
它看起來不像任何標準或自定義格式字符串都支持該格式。所以,在傳遞自己的格式化對象之後,ToString方法將無法正常工作。 –
如果您想要顯示24小時以上的內容。是否真的需要在每次要將Interger轉換爲hh:mm時創建TimeSpan對象?
Public Function MinutesTohhmm(ByVal mins As Integer) As String
Dim hrs As Integer = mins \ 60
Dim mnts As Integer = mins Mod 60
Dim hhmmStr As String = IIF(hrs < 10, "0", "") & hrs & ":" & IIF(mnts < 10, "0", "") & mnts
Return hhmmStr
End Function
你知道嗎? http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx –
「正常數字」是什麼意思?我不知道這意味着什麼。 – Oded
<>虛構? ;-) – pnuts