如何将日期时间字符串转换为GMT的UTC时间格式。
var x = "02/01/2017 10:00";
var z = DateTime.ParseExact(x, "ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture);
事实上,您尝试的方法是错误的。您可以先获取等同于给定日期的DateTime值,然后将它们转换为UTC时间。可以尝试以下操作:
string inputDateStr = "02/01/2017 10:00";
DateTime inputDate;
if (DateTime.TryParseExact(inputDateStr, "MM/dd/yyyy HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out inputDate))
{
Console.WriteLine("Date time Now : {0} ", inputDate);
Console.WriteLine("Date time UTC : {0} ", inputDate.ToUniversalTime().ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'"));
}
以上为示例代码链接。inputDate.ToUniversalTime().ToString("ddd, dd MMM yyyy HH:mm:ss 'GMT'")
,无需进行转换。 - sujith karivelilvar dateTimeWithUnspecifiedKind = DateTime.ParseExact(x, "dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture);
var dateTimeAsUtc = DateTime.SpecifyKind(dateTimeWithUnspecifiedKind, DateTimeKind.Utc);
var s = dateTimeAsUtc.ToString("O");
2017-01-02T10:00:00.0000000Z
DateTime.ToUniversalTime()
或DateTime.UtcNow
方法获取UTC时间。