Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 字符串的日期时间格式_C#_Datetime - Fatal编程技术网

C# 字符串的日期时间格式

C# 字符串的日期时间格式,c#,datetime,C#,Datetime,我有一个字符串值,我需要更改为DateTime,并了解它是否有效 字符串如下:例如26.04.2021,Lunes 我试图获得下面的值,但它不起作用 var isValid = DateTime.TryParseExact("26.04.2021, Lunes", "dd.MM.yyyy dddd", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTi

我有一个字符串值,我需要更改为DateTime,并了解它是否有效

字符串如下:例如26.04.2021,Lunes

我试图获得下面的值,但它不起作用

var isValid = DateTime.TryParseExact("26.04.2021, Lunes", "dd.MM.yyyy dddd", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out var validDate);

正确的格式是什么?

我认为您需要传递特定的区域性,并且我认为您的格式字符串中缺少逗号(
):

var isValid=DateTime.TryParseExact(“2021年4月26日,Lunes”,“dd.MM.yyyy,dddddd”),新文化信息(“es”),datetimestyle.None,out var validDate);
在固定区域性中,“Lunes”不是有效的日名称。我假设目标语言是西班牙语,因此我可以声明文化:

var culture = CultureInfo.GetCultureInfoByIetfLanguageTag("es-ES");
下一个问题是您的日期中有逗号,但您的格式没有,因此我们将更正:

"dd.MM.yyyy, dddd"
综合起来,我们得到:

var isValid = DateTime.TryParseExact("26.04.2021, Lunes", "dd.MM.yyyy, dddd", culture, System.Globalization.DateTimeStyles.None, out var validDate);
请注意,我已经用
culture
变量替换了
System.Globalization.CultureInfo.InvariantCulture

代码现在起作用了


“Lunes”在不变区域性中不是有效的日名称,并且您的输入数据中有一个额外的
,但它不是您的格式字符串。@感谢您的评论,我尝试添加额外的,但现在无法再工作了。这是西班牙语日期时间格式。“Lunes”在西班牙语中是指星期一。