需要将字符串解析为 mm:ss 而不是 hh:mm

No *_*ven 3 c# datetime-format

我需要转换一个stringmm: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");
Run Code Online (Sandbox Code Playgroud)

Dmi*_*nko 5

您的代码有两个问题:

  1. 您可以使用自定义分隔符 :逃脱\
  2. 您不使用前导零( "06:14"),这就是为什么您应该放置m而不是mm(而s不是ssif"6:6"是一个正确的值):

代码:

  string time = "6:14";
  TimeSpan ts = TimeSpan.ParseExact(time, @"m\:s", null);
  string total = ts.ToString(@"hh\:mm\:ss"); 
Run Code Online (Sandbox Code Playgroud)