我如何将时区字符串转换为时间跨度,反之亦然

本文关键字:时间跨度 反之亦然 转换 字符串 时区 | 更新日期: 2023-09-27 18:17:37

我有一个字符串,如:

"+10:30", "+04:50", "-10:20"

是时区格式。如何将其转换为TimeSpan,反之亦然?


我已经尝试使用TimeSpan.Pars(..),但没有运气,不断得到异常

我如何将时区字符串转换为时间跨度,反之亦然

使用

TimeSpan.Parse(yourTimeZoneString.TrimStart('+'));

TimeSpan.Parse()不理解的是"+"。如果你只是从字符串中去掉前面的'+',它会工作得很好。

在解析前删除+号。

var l = new List<string>(){"+10:30" , "+04:50" , "-10:20"};
foreach(var ts in l) {
    Console.WriteLine(TimeSpan.Parse(ts.Replace("+","")).ToString());
}

您可以使用TimeSpan。解析方法,它将从您的示例中接受字符串值:http://msdn.microsoft.com/en-us/library/se73z7b9.aspx唯一的问题是,我不确定它是否会接受"+"符号,但是,很容易删除它与string . replace .