C# 输入为整数小时,输出为正或负hh:mm格式
当给定一个C# 输入为整数小时,输出为正或负hh:mm格式,c#,datetime,C#,Datetime,当给定一个整数输入时,关于字符串输出,我有一个非常愚蠢的问题 此方法的存根如下所示: public string myMethod(int hours) { return in -/+hours:mm format } public string myMethod(int hours) { return string.Format("{0:+#;-#}:00", hours); } Console.WriteLine(myMethod(1)); // +1:00 Cons
整数
输入时,关于字符串
输出,我有一个非常愚蠢的问题
此方法的存根如下所示:
public string myMethod(int hours)
{
return in -/+hours:mm format
}
public string myMethod(int hours)
{
return string.Format("{0:+#;-#}:00", hours);
}
Console.WriteLine(myMethod(1)); // +1:00
Console.WriteLine(myMethod(-2)); // -2:00
Console.WriteLine(myMethod(12)); // +12:00
假设我们有一个整数输入hours
作为1
,此方法的输出将是+01:00
假设我们有一个-2
的输入,这个方法的输出将是-02:00
假设我们有一个12
的输入,这个方法的输出将是+12:00
它出现在C#中,通过使用{}
,有一些方法可以精心设计整数/双精度输出,使它们以某种方式出现
如何使用此整数格式化程序解析整数输入,并以该特定格式输出?尝试以下操作:
public string myMethod(int hours)
{
return in -/+hours:mm format
}
public string myMethod(int hours)
{
return string.Format("{0:+#;-#}:00", hours);
}
Console.WriteLine(myMethod(1)); // +1:00
Console.WriteLine(myMethod(-2)); // -2:00
Console.WriteLine(myMethod(12)); // +12:00
具体取决于您希望如何处理0,您可以使用以下方法:
public string myMethod(int hours)
{
return string.Format("{0:+#;-#;+0}:00", hours);
}
Console.WriteLine(myMethod(0)); // +0:00
进一步阅读
public static string toTimeSpan(int hours, int minutes)
{
if (hours < 0)
{
return "-" + TimeSpan.FromHours(hours).ToString(@"hh") + TimeSpan.FromMinutes(minutes).ToString(@"\:mm");
}
else
{
return "+" + TimeSpan.FromHours(hours).ToString(@"hh") + TimeSpan.FromMinutes(minutes).ToString(@"\:mm");
}
}
公共静态字符串到时间跨度(整数小时,整数分钟)
{
如果(小时<0)
{
返回“-”+TimeSpan.FromHours.ToString(@“hh”)+TimeSpan.FromMinutes.ToString(@“\:mm”);
}
其他的
{
返回“+”TimeSpan.FromHours(hours).ToString(@“hh”)+TimeSpan.FromMinutes(minutes).ToString(@“\:mm”);
}
}
如果不正确,请告诉我。到目前为止,它对我很有效。那么问题到底是什么?