gpt4 book ai didi

c# - 将字符串转换为 DateTime 对象并将其添加到总时间

转载 作者:行者123 更新时间:2023-11-30 13:55:11 24 4
gpt4 key购买 nike

我有一个字符串列表,其中包含在 hh:mm:ss 中花费的时间作为字符串喜欢

00:00:40
00:01:00
00:02:10

我想添加这些值并将其显示给用户

Total Time: 00:03:50

我可以将每个时间值解析为日期时间,但如何添加它们以显示上面显示的结果。

下面是我如何将字符串解析为 DateTime

foreach(string itm in TimeList)
{
DateTime sTime = DateTime.ParseExact(itm , "HH:mm:ss", CultureInfo.CurrentCulture);
}

最佳答案

您的解析操作没有问题。但是您在每次 迭代中将结果分配给您的sTime,这就是为什么您丢失了除最后一个数据之外的所有数据

但更重要的是,我会将它们解析为 TimeSpan,而不是 DateTime相反,它更适合您的数据,因为它是一个时间间隔

var list = new List<string>
{
"00:00:40",
"00:01:00",
"00:02:10"
};

var total = TimeSpan.Zero;

foreach (var item in list)
{
total += TimeSpan.ParseExact(item, "hh\\:mm\\:ss", CultureInfo.InvariantCulture);
}

现在你可以格式化你的total并显示给喜欢的用户;

string.Format("Total Time: {0}", 
total.ToString("hh\\:mm\\:ss", CultureInfo.InvariantCulture));

It seems ParseExact is not available in DotNet 3.5

然后你可以使用TimeSpan.Parse method从 .NET 1.0 版本开始可用。但我强烈建议您可以考虑升级您的框架版本。

foreach (var item in list)
{
total += TimeSpan.Parse(item);
}

关于c# - 将字符串转换为 DateTime 对象并将其添加到总时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36566140/

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