【问题标题】:How can I convert to valid DateTimeUtc this string` "2020-05-25 15:25:40 EEST"?如何将此字符串“2020-05-25 15:25:40 EEST”转换为有效的 DateTimeUtc?
【发布时间】:2020-05-26 09:09:48
【问题描述】:

我有一个如下的日期时间值,我想在 C# 中将其转换为日期时间 UTC。

var dateTime = "2020-05-25 15:25:40 EEST"; 

我尝试了 DateTime.ParseExact 和 DateTime.TryParse,但出现以下错误:

System.FormatException: 'String '2020-05-25 15:25:40 EEST' 不是 被识别为有效的日期时间。'

我需要输出类似 `2020-02-24 12:09:42.103.

【问题讨论】:

  • 如果可以的话,您能否在尝试将其转换为 DateTime 之前进行一些字符串操作并删除 EEST?

标签: c# .net


【解决方案1】:

将日期格式转换为escape'EEST'时区信息的一种方法!

您可以在另一个问题Parse string date (EEST included) but it fails中找到详细信息。

在您的情况下,以下代码会有所帮助:

var dateTime = "2020-05-25 15:25:40.123 EEST";
string format = "yyyy-MM-dd HH:mm:ss.fff 'EEST'";
DateTime dt = DateTime.ParseExact(dateTime, format, CultureInfo.InvariantCulture);

Console.WriteLine(dt.ToUniversalTime());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-30
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多