gpt4 book ai didi

c# - 日期时间解析

转载 作者:IT王子 更新时间:2023-10-29 04:12:00 25 4
gpt4 key购买 nike

我正在编写一个系统日志服务器,用于接收系统日志消息并将它们存储在数据库中。

我正在尝试将消息中收到的日期字符串解析为 DateTime 结构。

对于以下示例,为了清晰起见,我将使用下划线代替空格;实际收到的字符串有空格。

我收到的字符串格式为 "Jun__7_08:09:10" - 请注意月份和日期之间的两个空格。

如果日期在 10 号之后,则字符串变为 "Jun_10_08:09:10"(一个空格)。

如果我解析:

DateTime.ParseExact(Log.Date, "MMM  d HH:mm:ss", CultureInfo.InvariantCulture);

它适用于从 1 号到 9 号的字符串,但从 10 号开始抛出异常,如果我用一个空格解析,它会在 1 号到 9 号抛出异常(并且从 10 号开始起作用)。

解析这个字符串的正确方法是什么?

最佳答案

考虑使用这一行:

DateTime.ParseExact(Log.Date,
"MMM d HH:mm:ss",
CultureInfo.InvariantCulture,
DateTimeStyles.AllowWhiteSpaces);

请注意,我删除了月份和日期之间的一个空格。那是因为 AllowWhiteSpaces 的字面意思是:

Specifies that s may contain leading, inner, and trailing white spaces not defined by format.

关于c# - 日期时间解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16984946/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com