gpt4 book ai didi

c# - CultureInfo.GetCultureInfo ("en-GB")与 en-US 日期格式不兼容,但与其他格式兼容

转载 作者:行者123 更新时间:2023-12-02 01:25:42 26 4
gpt4 key购买 nike

为什么第一行代码会抛出“String was not recognizes as a valid DateTime.”异常?

en-GB 似乎与 en-US 不兼容,但奇怪的是与 zh-CN 和 ru-RU 日期格式字符串兼容。

是的,我可以简单地将区域性信息更改为 en-US,以使其与 en-US 日期格式字符串兼容。但我的问题是为什么 en-GB 可以与 zh-CN 和 ru-RU 格式字符串一起使用?

有什么想法吗?

        var obj = DateTime.Parse("11/20/2013 3:10:36 AM", CultureInfo.GetCultureInfo(0x0809).DateTimeFormat);//en-US
obj = DateTime.Parse("2013/11/20 3:16:08", CultureInfo.GetCultureInfo(0x0809).DateTimeFormat);//zh-CN
obj = DateTime.Parse("20.11.2013 3:17:44", CultureInfo.GetCultureInfo(0x0809).DateTimeFormat); //ru-RU

0x0809 en-GB 英语(英国)英语

谢谢

最佳答案

您已指定需要 en-GB 格式的 DateFormat,其格式通常为 dd/MM/yyyy ... 并且它正在尝试创建一个月份值为 20 的日期,但该日期不存在。

如果您将预期的输入格式更改为 en-US 它将起作用,并且您的内部日期将是正确的。如果您愿意,您可以将其输出为 en-GB 格式

var obj = DateTime.Parse("11/20/2013 3:10:36 AM", CultureInfo.GetCultureInfo("en-US").DateTimeFormat);//en-US
string s = obj.ToString(CultureInfo.GetCultureInfo("en-GB").DateTimeFormat); //20/11/2013 03:10:36

关于c# - CultureInfo.GetCultureInfo ("en-GB")与 en-US 日期格式不兼容,但与其他格式兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20086810/

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