📜  C# 毫秒到 hms - C# (1)

📅  最后修改于: 2023-12-03 14:59:42.963000             🧑  作者: Mango

C# 毫秒到 hms

简介

在开发中,经常会涉及到毫秒与小时、分钟、秒之间的转换。本文将介绍如何使用 C# 将毫秒转换为小时、分钟和秒的形式。

方法一:使用 TimeSpan 类

TimeSpan 类是 C# 中用于表示一段时间的标准类。我们可以使用该类中的 FromMilliseconds 方法将毫秒转换为 TimeSpan 对象,然后再通过 TimeSpan 对象的属性获取小时、分钟和秒。

int milliseconds = 1234567;
TimeSpan timeSpan = TimeSpan.FromMilliseconds(milliseconds);

int hours = timeSpan.Hours;
int minutes = timeSpan.Minutes;
int seconds = timeSpan.Seconds;

上述代码中,我们首先定义了一个整型变量 milliseconds 并赋予其一个毫秒值。然后我们使用 TimeSpan.FromMilliseconds 方法将毫秒转换为 TimeSpan 对象。最后,我们分别获取了 TimeSpan 对象的 HoursMinutesSeconds 属性,将其赋值给对应的变量。

方法二:手动计算

如果你不想使用 TimeSpan 类,也可以手动计算小时、分钟和秒。毫秒到小时的计算可以直接除以 3600000(1000 毫秒 * 60 秒 * 60 分),得到的结果即为小时数。分钟和秒的计算类似,只需将相应的除数改为 60000(1000 毫秒 * 60 秒)和 1000(1 秒等于 1000 毫秒)即可。

int milliseconds = 1234567;

int hours = milliseconds / 3600000;
int remainder = milliseconds % 3600000;
int minutes = remainder / 60000;
remainder %= 60000;
int seconds = remainder / 1000;

上述代码中,我们首先定义了一个整型变量 milliseconds 并赋予其一个毫秒值。然后我们分别计算了小时、分钟和秒的值。注意,在计算分钟和秒时,我们使用了求模运算符 %

示例

下面是一个完整的示例,演示了如何将毫秒转换为小时、分钟和秒,并打印结果。

using System;

class Program
{
    static void Main()
    {
        int milliseconds = 1234567;
        TimeSpan timeSpan = TimeSpan.FromMilliseconds(milliseconds);

        int hours = timeSpan.Hours;
        int minutes = timeSpan.Minutes;
        int seconds = timeSpan.Seconds;

        Console.WriteLine($"Hours: {hours}, Minutes: {minutes}, Seconds: {seconds}");
    }
}

输出结果为:

Hours: 0, Minutes: 20, Seconds: 34

以上为将毫秒转换为小时、分钟和秒的两种方法。根据实际情况和个人喜好,可以选择适合自己的方法进行转换。