gpt4 book ai didi

c# - 使用 TimeSpan.ParseExact 解析时,输入字符串的格式不正确

转载 作者:太空宇宙 更新时间:2023-11-03 19:19:48 24 4
gpt4 key购买 nike

我有一个DataTable dtTest

我想从该表的第 2 行和第 2 列解析一个单元格此单元格的格式可以是 hh:mm:ss 或 h:mm:ss

我想解析它以切换到格式 h.mm 或 hh.mm

这里我验证位置2上是否有符号“:

string typeTime = dtTest.Rows[2][2].ToString().Substring(1, 1);

现在我解析它们:

TimeSpan.ParseExact(dtTest.Rows[2][2].ToString(), 
typeTime == "." ? "h'.'mm" : "hh'.'mm", CultureInfo.InvariantCulture);

解析后它给我一个错误“输入字符串的格式不正确”。

最佳答案

您正在尝试准确地 解析字符串 - 您的字符串包含格式字符串中不存在的秒组件。您的字符串还包含 : 您在其中指定 ..

以下应该有效:

TimeSpan.ParseExact(dtTest.Rows[2][2].ToString(), 
"h':'mm':'ss", CultureInfo.InvariantCulture);

请注意,h 格式说明符将正确理解 808

此外,您可以简单地使用 standard TimeSpan format strings 之一- 特别是 gc 而不是自定义格式字符串:

TimeSpan.ParseExact(dtTest.Rows[2][2].ToString(), 
"g", CultureInfo.InvariantCulture);

TimeSpan.ParseExact(dtTest.Rows[2][2].ToString(),
"c", CultureInfo.InvariantCulture);

关于c# - 使用 TimeSpan.ParseExact 解析时,输入字符串的格式不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13230113/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com