gpt4 book ai didi

c# - 在 C# 中格式化日期时间

转载 作者:行者123 更新时间:2023-11-30 14:15:08 25 4
gpt4 key购买 nike

我只是想把一串日期改成DateTime。

但是,当我尝试打印时,它总是说结果是 5/31/20098:00:00 AM

知道为什么会这样吗?

namespace Test
{
class Test
{
static void Main()
{
Parse("5/31/2009 12:00:00 AM" );
}

static readonly string ShortFormat = "M/d/yyyy hh:mm:ss tt";

static readonly string[] Formats = { ShortFormat };

static void Parse(string text)
{
// Adjust styles as per requirements
DateTime result = DateTime.ParseExact(text, ShortFormat,
CultureInfo.InvariantCulture,
DateTimeStyles.AssumeUniversal);
Console.WriteLine(result);
Console.WriteLine(result);
}
}
}

最佳答案

如果您希望解析的DateTime 不考虑时区,您需要使用DateTimeStyles.NoneDateTimeStyles.AssumeLocal:

DateTime result = DateTime.ParseExact(text, ShortFormat,
CultureInfo.InvariantCulture,
DateTimeStyles.None);

当您使用 DateTimeStyles.AssumeUniversal 时,会根据计算机时区进行自动时区转换。

参见 the documentation :

AssumeUniversal - If no time zone is specified in the parsed string, the string is assumed to denote a UTC.

关于c# - 在 C# 中格式化日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10583009/

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