相关疑难解决方法(0)

如何解析时间大于24的字符串到TimeSpan?

如何在C#中将30:15的字符串解析为TimeSpan?30:15表示30小时15分钟.

string span = "30:15";
TimeSpan ts = TimeSpan.FromHours(
    Convert.ToDouble(span.Split(':')[0])).
  Add(TimeSpan.FromMinutes(
    Convert.ToDouble((span.Split(':')[1]))));
Run Code Online (Sandbox Code Playgroud)

这似乎并不太优雅.

c# timespan

27
推荐指数
2
解决办法
2万
查看次数

在C#中解析时间超过24小时

假设一个时间戳(只是时间或日期和时间),时间可以转到第二天:

00:00:00 < - 午夜

01:00:00 < - 1 AM

23:00:00 < - 11 PM

24:00:00 < - 午夜,白天+ 1

25:00:00 < - 凌晨1点,天+ 1

有什么办法可以轻松地将它解析成一个C#DateTime来执行第二天的结转?换句话说,"01:00:00"将变为"0001-01-01 01:00:00"并且"25:00:00"将变为"0001-01-02 01:00:00".

编辑:

我应该提到这个失败(即FormatException):

DateTime.ParseExact("0001-01-01 25:00:00", "yyyy-MM-dd HH:mm:ss", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

c# datetime

7
推荐指数
1
解决办法
7264
查看次数

标签 统计

c# ×2

datetime ×1

timespan ×1