C# 如何验证字符串是否为特定日期格式?
如何验证字符串的格式是否为C# 如何验证字符串是否为特定日期格式?,c#,C#,如何验证字符串的格式是否为“dd.MM.yyyy HH:MM:ss.mmm” 例如: 12.01.2011 13:26:10.000 13.05.2010 22:30:20.000 尝试用…解析它。尝试用…解析它 当它不是datetime格式时,将发生异常 或者可以使用台帕司 string c = "12.01.2011 13:26:10.000"; DateTime dt; if(!DateTime.TryParse(c,out
“dd.MM.yyyy HH:MM:ss.mmm”
例如:
12.01.2011 13:26:10.000
13.05.2010 22:30:20.000
尝试用…解析它。尝试用…解析它
当它不是datetime格式时,将发生异常
或者可以使用台帕司
string c = "12.01.2011 13:26:10.000";
DateTime dt;
if(!DateTime.TryParse(c,out dt))
{
//rejected
}
当它不是datetime格式时,将发生异常
或者可以使用台帕司
string c = "12.01.2011 13:26:10.000";
DateTime dt;
if(!DateTime.TryParse(c,out dt))
{
//rejected
}
与所需的日期格式一起使用。这将确保仅匹配此特定格式,与正常的Parse
/TryParse
相反
string c = "12.01.2011 13:26:10.000";
DateTime result;
if (DateTime.TryParseExact(c, "dd.MM.yyyy HH:mm:ss.fff", CultureInfo.InvariantCulture, DateTimeStyles.None, out result)) {
// do something
} else {
// do something else
}
与所需的日期格式一起使用。这将确保仅匹配此特定格式,与正常的Parse
/TryParse
相反
string c = "12.01.2011 13:26:10.000";
DateTime result;
if (DateTime.TryParseExact(c, "dd.MM.yyyy HH:mm:ss.fff", CultureInfo.InvariantCulture, DateTimeStyles.None, out result)) {
// do something
} else {
// do something else
}
您可以使用
TryParseExact
:
string format = "dd.MM.yyyy HH:mm:ss.fff";
string c = "12.01.2011 13:26:10.000";
CultureInfo enUS = new CultureInfo("en-US");
DateTime result;
if (DateTime.TryParseExact(c, format, enUS, DateTimeStyles.None, out result))
{
Console.WriteLine("Right Format");
}
else
{
Console.WriteLine("Wrong Format");
}
您可以使用
TryParseExact
:
string format = "dd.MM.yyyy HH:mm:ss.fff";
string c = "12.01.2011 13:26:10.000";
CultureInfo enUS = new CultureInfo("en-US");
DateTime result;
if (DateTime.TryParseExact(c, format, enUS, DateTimeStyles.None, out result))
{
Console.WriteLine("Right Format");
}
else
{
Console.WriteLine("Wrong Format");
}
@德雅:你说太慢是什么意思?您的绩效标准是什么?我有84000多个数据。所以,当程序试图通过这种方式解析时,需要2分钟以上的时间。。好的,现在我已经在尝试TryParse;)我试过了,但有点错误:if(DateTime.TryParse(c,CultureInfo.InvariantCulture,“dd.MM.yyyy HH:MM:ss.fff”,result)){}结果类型是DateTime..@derya,看看我的答案,找到一个有效的
TryParseExact
解决方案。试试这个DateTime.TryParseExact(c,“dd.MM.yyyyyy HH:MM:ss.fff”,CultureInfo.InvariantCulture,DateTimeStyles.None,out result)@derya:你说太慢是什么意思?您的绩效标准是什么?我有84000多个数据。所以,当程序试图通过这种方式解析时,需要2分钟以上的时间。。好的,现在我已经在尝试TryParse;)我试过了,但有点错误:if(DateTime.TryParse(c,CultureInfo.InvariantCulture,“dd.MM.yyyy HH:MM:ss.fff”,result)){}结果类型是DateTime..@derya,看看我的答案,找到一个有效的TryParseExact
解决方案。试试这个DateTime.TryParseExact(c,“dd.MM.yyyyyy HH:MM:ss.fff”,CultureInfo.InvariantCulture,DateTimeStyles.None,输出结果)