0

减法两次时间格式,

string _time_One = "08:30" ;
string _time_Two = "08:35" ;

string _timeInterval = ( DateTime.Parse(_time_One) - DateTime.Parse(_time_Two) ).Minutes.ToString();

它给了我结果5,但我想显示喜欢这种格式00:05
请告诉我如何格式化它。提前致谢 !

4

4 回答 4

4

减去两个使用该方法DateTime为您提供了TimeSpan它自己的格式支持ToString

例如:

DateTime now = DateTime.Now;
DateTime later = now.AddMinutes(10);
TimeSpan span = later - now;

string result = span.ToString(@"hh\:mm");

您可以在MSDN上阅读更多信息。

于 2013-10-30T11:02:20.060 回答
2

试试这个:

string _time_One = "08:30";
string _time_Two = "08:35";
var span = (DateTime.Parse(_time_One) - DateTime.Parse(_time_Two));
string _timeInterval = string.Format("{0:hh\\:mm}", span);

供参考:自定义时间跨度格式字符串

于 2013-10-30T11:17:49.517 回答
1

@Lloyd 就在这里,但要为您的情况澄清这一点:

string _time_One = "08:30" ;
string _time_Two = "08:35" ;

TimeSpan ts = DateTime.Parse(_time_One) - DateTime.Parse(_time_Two);
MessageBox.Show(String.Format("Time: {0:00}:{1:00}", ts.Hours, ts.Minutes));

我希望这有帮助。

于 2013-10-30T11:05:01.820 回答
0
string _time_One = "08:30";
string _time_Two = "08:35";

string _timeInterval = (DateTime.Parse(_time_One) - DateTime.Parse(_time_Two)).Duration().ToString();

结果=>00:05:00

于 2013-10-30T11:07:49.710 回答