我有string
,其值 16:00:00 我想将其转换为时间格式hh:mm:ss .. 我不想要约会
TimeSpan.ParseExact(splitLine[6], "hh:mm:ss", null);
抛出的错误是system.time无法转换为system.date时间
DateTime.ParseExact(splitLine[6], "hh:mm:ss", CultureInfo.InvariantCulture);
返回日期时间,自动添加今天的日期。
我只想要时间格式。
请帮帮我。
答案 0 :(得分:2)
来自MSDN:
ParseExact方法使用由指定的文化约定 仅当format是标准TimeSpan时,formatProvider参数 格式字符串,其值为“g”或“G”。 “c”,“t”和“T” 标准格式字符串使用的格式约定 不变的文化。自定义格式字符串定义了精确的格式 输入字符串并使用文字字符来分隔组件 时间间隔。
然后,您可以使用它来实现您的目标。
TimeSpan.ParseExact(splitLine[6], "T", CultureInfo.InvariantCulture);
答案 1 :(得分:0)
下面的代码怎么样?它对我来说很好。
string time = "16:00:00";
TimeSpan.Parse(time);
答案 2 :(得分:0)
使用Custom TimeSpan Format Strings,你必须逃避冒号等分隔符,例如:
TimeSpan.ParseExact(splitLine[6], "hh':'mm':'ss", null)
或:
TimeSpan.ParseExact(splitLine[6], @"hh\:mm\:ss", null)
请注意,这与DateTime
格式字符串不同,其中某些分隔符(如冒号:
)具有特殊含义,而其他分隔符(如句号.
)没有任何意义但不具有需要逃脱。