解析“12:00 a.m.”作为仅时间

问题描述 投票:0回答:1

我正在努力解析“上午 12:00”正在进行的字符串。格式。

我尝试过

TimeOnly.TryParse("12:00 a.m.", CultureInfo.InvariantCulture, out var result)
,但没用。

我查看了 DateTimeStyles,但它们不相关。

该文档看起来没什么用,而且很难用谷歌搜索。 我找到了一个库 ChronicNetCore,但它看起来有点矫枉过正。

我不确定字符串总是像“12:00 a.m.”,我认为它们可以是 “12:00AM”或“12:00am”或“12am”。

是否有任何内部 .Net 解决方案可以稳定解析仅限美国文化的“TimeOnly”字符串?

c#
1个回答
1
投票

可以使用

TimeOnly.TryParseExact
方法

这个文档页面显示了一个与您的示例非常相似的示例(使用

ParseExact
,但您可以类似地应用到
TryParseExact
):

var theTime = TimeOnly.ParseExact("5:00 pm", "h:mm tt", CultureInfo.InvariantCulture);  // Custom format

您可以根据需要修改

format
字符串。

© www.soinside.com 2019 - 2024. All rights reserved.