我的代码中有这个:
var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
当我现在的文化是荷兰语 ( nl-NL
) 而不是 5 月 1 日时,我会得到 1 月 5 日。
我认为错误在第二个参数dd.MM.yyyy HH:mm:ss
中。
有没有办法使用CultureInfo
类来解决这个问题?
我的代码中有这个:
var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
当我现在的文化是荷兰语 ( nl-NL
) 而不是 5 月 1 日时,我会得到 1 月 5 日。
我认为错误在第二个参数dd.MM.yyyy HH:mm:ss
中。
有没有办法使用CultureInfo
类来解决这个问题?
您可以尝试以下方法:
System.Globalization.CultureInfo cultureinfo =
new System.Globalization.CultureInfo("nl-NL");
DateTime dt = DateTime.Parse(date, cultureinfo);
使用CultureInfo
类来改变你的文化信息。
var dutchCultureInfo = CultureInfo.CreateSpecificCulture("nl-NL");
var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", dutchCultureInfo);
InvariantCulture
类似于en-US
,所以我会改用正确的CultureInfo
:
var dutchCulture = CultureInfo.CreateSpecificCulture("nl-NL");
var date1 = DateTime.ParseExact(date, "dd.MM.yyyy HH:mm:ss", dutchCulture);
当文化是我们的时候呢?我必须为那里的每一种语言编写代码吗?
如果您想知道如何在“en-us”等另一种文化中显示日期,您可以使用date1.ToString(CultureInfo.CreateSpecificCulture("en-US"))
.
试试看..它会工作
字符串文本=“2021 年 3 月 15 日”;
DateTime.ParseExact(text, "dd/M/yyyy", CultureInfo.InvariantCulture);