[英]Convert DateTime string to specific timezone DateTime in c#
我有一个DateTime
字符串,我知道它在哪个timeZone中格式化,但是该字符串中没有任何timeZone信息。
范例: 2017-01-19 23:53:57
现在,此字符串将在另一个timeZone中的服务器中转换,我无法更改服务器的timeZone。
如果我使用DateTime.Parse("2017-01-19 23:53:57")
,我将获得服务器计算机的timeZone配置的DateTime
。
这是我的Web应用程序,服务器可以位于不同的时区。
我不想将孟加拉国时间转换为UTC。 我只想将孟加拉国时区格式的DateTime字符串也转换为孟加拉国时区格式的DateTime对象。
这应该做您的工作,因为您清楚地知道源的时区在巴格达什。
var time = DateTime.Parse("2017-01-19 23:53:57");
var clientZone = TimeZoneInfo.FindSystemTimeZoneById("Bangladesh Standard Time");
var utcTime = TimeZoneInfo.ConvertTimeToUtc(time, clientZone);
您可以通过以下方法将2017-01-19 23:53:57格式字符串转换为datetime。
DateTime DateConverter(string date)
{
string[] dateAndTimes= date.Split(' ');
string[] dateParts = dateAndTimes[0].Split('-');
string convertableString = dateParts[2] + "/" + dateParts[1] + "/" + dateParts[0] + " " + dateAndTimes[1];
return Convert.ToDateTime(convertableString);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.