将分钟转换为全职C#
本文关键字:分钟 转换 | 更新日期: 2023-09-27 18:19:56
我需要将1815分钟转换为30:15(30小时15分钟 有没有一种简单的方法可以做到我所缺少的?
使用TimeSpan.FromMinutes
:
var result = TimeSpan.FromMinutes(1815);
这将为您提供一个可以以不同方式使用的对象
例如:
var hours = (int)result.TotalHours;
var minutes = result.Minutes;
您可以使用此函数
//minutes to be converted (70minutes = 1:10 hours)
int totalminutes = 70;
//total hours
int hours = 70 / 60;
//total minutes
int minutes = 70 % 60;
//output is 1:10
var time = string.Format("{0} : {1}", hours, minutes);
DateTime d = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 0, 0, 0);
Console.WriteLine(d.ToLongTimeString());
Console.WriteLine(d.AddMinutes(1815).ToLongTimeString());
Console.ReadLine();
试试TimeSpan.FromMinutes(minutes)
,这会给你TimeSpan
,之后你可以检查TimeSpan.Hours
和TimeSpan.Minutes
的属性。
您可以使用此函数来获得所需的字符串
public string GetTimeString(int durationInMinute)
{
TimeSpan timeSpan = TimeSpan.FromMinutes(durationInMinute);
if(timeSpan.Hours == 1 && timeSpan.Minutes == 1)
return timeSpan.Hours + " Hour and " + timeSpan.Minutes + " Min";
else if (timeSpan.Hours > 1 && timeSpan.Minutes > 1)
return timeSpan.Hours + " Hours and " + timeSpan.Minutes + " Mins";
else if (timeSpan.Hours > 1 && timeSpan.Minutes < 1)
return timeSpan.Hours + " Hours";
else if(timeSpan.Hours < 1 && timeSpan.Minutes > 1)
return timeSpan.Minutes + " Mins";
else if(timeSpan.Hours == 1 && timeSpan.Minutes > 1)
return timeSpan.Hours + " Hour and " + timeSpan.Minutes + " Mins";
else if (timeSpan.Hours == 1 && timeSpan.Minutes == 0)
return timeSpan.Hours + " Hour";
else if (timeSpan.Hours == 0 && timeSpan.Minutes == 1)
return timeSpan.Minutes + " Min";
else
return timeSpan.Hours + " Hours and " + timeSpan.Minutes + " Mins";
}
在剃须刀中,这一行解决了我的相同情况
@TimeSpan.FromMinutes(@landing.Duration).Hours @R.Hour @TimeSpan.FromMinutes(@landing.Duration).Minutes @R.Minute
带有资源文件的输出给出了如下所示的格式化和文化结果
2小时55米=>英文
2 sa 55 dk=>土耳其
2或55分钟=>意大利
我喜欢Giorgio的解决方案,我对其进行了一些改进,并将其封装在扩展方法中
public static class ToStringFormatter
{
public static string ToTimeString(this int totalminutes)
{
int hours = totalminutes / 60;
//total minutes
int minutes = totalminutes % 60;
//output is 1:10
var time = $"{hours}:{minutes:00}";
return time;
}
}