Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 输入为整数小时,输出为正或负hh:mm格式_C#_Datetime - Fatal编程技术网

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”);
}
}

如果不正确,请告诉我。到目前为止,它对我很有效。

那么问题到底是什么?