1

我遇到了关于数字的整数部分和小数部分的问题。实际上我需要的是说我有一个数字'101'。这实际上是经过一些计算和时间后得出的。我需要找到小时和分钟。所以我所做的是

              overtime = 101
                    Dim fraction As Decimal = 0
                    If overtime > 59 Then
                        fraction = overtime / 60
                        'overtime = overtime / 60
                        fraction = fraction - CInt(fraction)
                        fraction = fraction * 60
                        Dim str() As String = Split(fraction.ToString, ".")
                        Try
                            If str(2).Length > 2 Then

                            End If
                        Catch ex As Exception

                        End Try

                    End If 

但是整数正在四舍五入,所以我得到了错误的答案。

4

2 回答 2

4

查看\运算符(与正常除法运算符相反的方向斜杠),它会自动截断小数部分,只留下一个整数,以及Mod只返回除法运算的余数的运算符。

于 2013-02-05T06:16:10.530 回答
0

您还可以使用 aTimeSpan为您进行转换:

 Dim overtime As Integer = 101
 Dim ov As TimeSpan = TimeSpan.FromMinutes(overtime)

 ' outputs "Hours: 1 Minutes: 41"
 Console.WriteLine(String.Format("Hours: {0} Minutes: {1}", ov.Days * 24 + ov.Hours, ov.Minutes))

overtime也可以是任何其他可以转换为Double.

于 2014-09-01T20:22:06.403 回答