【发布时间】:2021-08-30 02:39:26
【问题描述】:
我是 C# 新手,我有一个类似“2021-06-14 19:27:14:979”的字符串。现在我只想有时间“19:27:14:979”。那么我是将字符串解析为特定的 DateTime 格式,然后将其转换回字符串,还是您会解析或剪切字符串本身?
保持 24 小时制很重要。我不想要上午或下午。
我还没有找到任何解决方案。我尝试将其转换为 DateTime,例如:
var Time1 = DateTime.ParseExact(time, "yyyy-MM-dd HH:mm:ss:fff");
var Time2 = Time1.ToString("hh:mm:ss:fff");
但后来我失去了 24 小时格式。
【问题讨论】:
-
使用已解析的 DateTime 的
TimeOfDay属性。 -
您的代码几乎可以工作,但
ParseExact需要两个额外的参数:var Time1 = DateTime.ParseExact("2021-06-14 19:27:14:979", "yyyy-MM-dd HH:mm:ss:fff", null, DateTimeStyles.None); -
如果一直是这种格式,可以这样
string dateTime = "2021-06-14 19:27:14:979"; string time = dateTime.Split(' ')[1]; -
这能回答你的问题吗? Convert a Time to a formatted string in C#
-
如果你想时髦又酷,请使用 TimeOnly - devblogs.microsoft.com/dotnet/…
标签: c# string datetime parsing