需要将字符串解析为mm:ss而不是hh:mm
c#
我需要转换一个string
值mm:ss
(examples - "6:12"
, "59:59"
, "6:6"
) 并将它们总结在hh:mm:ss
格式化的值。
目前我正在尝试做一件简单的事情,但它向我抛出了这个异常:
“System.FormatException: '输入字符串的格式不正确。'”
下面是代码示例:
string time = "6:14";
TimeSpan ts = TimeSpan.ParseExact(time, "mm:ss", null);
string total = ts.ToString("hh:mm:ss");
回答
您的代码有两个问题:
- 您可以使用自定义分隔符
:
应逃脱与 - 您不使用前导零(
"06:14"
),这就是为什么您应该放置m
而不是mm
(而s
不是ss
if"6:6"
是一个正确的值):
代码:
string time = "6:14";
TimeSpan ts = TimeSpan.ParseExact(time, @"m:s", null);
string total = ts.ToString(@"hh:mm:ss");