仅字符串到时间格式(无日期)

本文关键字:无日期 格式 时间 字符串 | 更新日期: 2023-09-27 18:32:11

我有一个值为 16:00:00string,我想将其转换为时间格式 hh:mm:ss.。我不想要日期

TimeSpan.ParseExact(splitLine[6], "hh:mm:ss", null);抛出错误,系统时间无法覆盖到系统日期时间

DateTime.ParseExact(splitLine[6], "hh:mm:ss", CultureInfo.InvariantCulture);返回日期时间,并自动添加今天的日期。

我只想要时间格式。

请帮助我。

仅字符串到时间格式(无日期)

来自 MSDN:

方法使用由 指定的区域性的约定 仅当格式为标准时间跨度时,格式提供程序参数 格式字符串,其值为"g"或"G"。"c"、"t"和"t" 标准格式字符串使用 固定区域性。自定义格式字符串定义 输入字符串并使用文字字符分隔组件 的时间间隔。

然后,您可以使用它来实现您的目标。

TimeSpan.ParseExact(splitLine[6], "T", CultureInfo.InvariantCulture);

使用自定义时间跨度格式字符串,您必须转义冒号等分隔符,例如:

TimeSpan.ParseExact(splitLine[6], "hh':'mm':'ss", null)

或:

TimeSpan.ParseExact(splitLine[6], @"hh':mm':ss", null)

请注意,这与DateTime格式字符串不同,其中某些分隔符(如冒号:)具有特殊含义,而其他分隔符(如句点.)没有含义,但不需要转义。

下面的

代码呢?它对我来说工作正常。

string time = "16:00:00";
TimeSpan.Parse(time);