-1

Visual Studio 2010 を使用して、時刻を最も近い 30 分に変換する関数を作成しています。

誰にもアイデアがありますか?前もって感謝します。

4

2 に答える 2

2

この方法を使用できます:

Public Enum eRoundingDirection
    up
    down
    nearest
End Enum

Public Shared Function RoundDateTime(dt As DateTime, minutes As Integer, direction As eRoundingDirection) As DateTime
    Dim t As TimeSpan
    Select Case direction
        Case eRoundingDirection.up
            t = (dt.Subtract(DateTime.MinValue)).Add(New TimeSpan(0, minutes, 0))
        Case eRoundingDirection.down
            t = (dt.Subtract(DateTime.MinValue))
        Case Else
            t = (dt.Subtract(DateTime.MinValue)).Add(New TimeSpan(0, minutes \ 2, 0))
    End Select

    Return DateTime.MinValue.Add(New TimeSpan(0, (CInt(t.TotalMinutes) \ minutes) * minutes, 0))
End Function

現在の時刻を最も近い 30 分に丸めるには:

Dim rounded = RoundDateTime(Date.Now, 30, eRoundingDirection.nearest):

最初に見つかった(C#で)ここ

于 2013-02-25T08:28:42.180 に答える
0

この回答を確認してください時間を丸める方法 これはjavascriptの例ですが、vb.netでも同じことが可能です。

于 2013-02-25T08:14:26.500 に答える