c# - 将 DateTime 解析为通用时间 C#

标签 c# datetime .net-3.5

我有一个可以返回格式为 (7/23/2013 4:00pm) 的时间的 xml 我的问题是:我如何向 DateTime.ParseExact 解释我处于“上午”或“下午”?我有这段代码,但它返回异常(无法解析字符串)

我已经放置了一个示例字符串 (7/23/2013 4:00pm),其中我将“pm”替换为空链“”。

string pattern = "MM/dd/yyyy H:mm 'UTC' zzz";
DateTime time = DateTime.ParseExact(sb.ToString(), pattern, CultureInfo.InvariantCulture,
                                                      DateTimeStyles.AssumeUniversal |
                                                      DateTimeStyles.AdjustToUniversal);

非常感谢:)

最佳答案

您可以传递一个数组来覆盖各种格式。我将以下内容用于各种时间输入。

var formats = new[] 
    {
        "M/dd/yyyy hh:mm tt",
        "M/dd/yyyy hh:mmtt",
        "M/dd/yyyy h:mm tt",
        "M/dd/yyyy h:mmtt",
        "M/dd/yyyy hhtt",
        "M/dd/yyyy htt",
        "M/dd/yyyy h tt",
        "M/dd/yyyy hh tt"
    };

    var date = "7/23/2013 4:00pm";

    DateTime time = DateTime.ParseExact(date, formats, CultureInfo.InvariantCulture,
                                                  DateTimeStyles.AssumeUniversal |
                                                  DateTimeStyles.AdjustToUniversal);

关于c# - 将 DateTime 解析为通用时间 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17804075/

相关文章:

c# - C# 中的事件注册范围

c# - MongoDB:规范化存储到嵌入式领域模型

asp.net - 发送Excel文件给客户

c# - 通用自定义 linq 过滤器

javascript - Web 应用程序中的时区敏感日期和时间显示?

generics - 解释为什么 IEnumerable 比 List 更高效

c# - Oracle PL/SQL COALESCE 函数的 C# 等价物是什么?

c# - 使用 C# 从 Outlook 中检索特定于用户的任务

python - 使用 datetime64 将字符串转换为 np.array,而不是使用 Pandas

mysql - 随着mysql中每一天的流逝,自动将天数添加到日期时间