如何向子字符串添加 utc 偏移量 c#

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

我有一个返回新模型的方法,如下

return new Model
            {
               
                markets= response.markets
            };

市场对象如下所示:

markets: "B234851T001 - 23/08/04 11:31, B234961T002 - 23/08/04 03:43"

我需要为每个日期时间添加 UTC 偏移量+2。这样它看起来如下

markets: "B234851T001 - 23/08/04 13:31, B234961T002 - 23/08/04 05:43

通常,如果市场对象不是字符串而只是一个日期时间对象,我会执行以下操作:

markets.AddHours(2)

但我不确定如何使用字符串中的多个日期时间来实现所需的上述输出? 注意:在模型访问字符串之前我无法编辑字符串

c# datetimeoffset
1个回答
0
投票

分割字符串,解析日期时间,调整它们,用更正后的日期时间重建字符串。

这有效。您可能需要调整 ToString() 以获得完全正确的格式:

        var startstring = "B234851T001 - 23/08/04 11:31, B234961T002 - 23/08/04 03:43";
        var splitStrings = startstring.Split(',');
        var dateStrings = splitStrings.Select(x => x.Substring(x.IndexOf("-") + 2));
        var adjustedDateTimes = dateStrings.Select(x => DateTime.Parse(x).AddHours(2)).ToList();
        var startOfStrings = splitStrings.Select(x => x.Substring(0, x.IndexOf("-"))).ToList();
        var result = startOfStrings[0] + "- " + adjustedDateTimes[0].ToString();
        for (var i = 1; i < startOfStrings.Count(); i++)
        {
            result += ", " + startOfStrings[i] + "- " + adjustedDateTimes[i].ToString();
        }
© www.soinside.com 2019 - 2024. All rights reserved.