DateTime.TryParseExact(String, String, C# with Example



DateTime.TryParseExact(String, String, C# with Example

IFormatProvider, D ateTimeStyles, DateTime) 
Converts the specified string representation of a date and time to its DateTime equivalent using the specified 
format, culture-specific format information, and style. The format of the string representation must match the 
specified format exactly. The method returns a value that indicates whether the conversion succeeded. 
For Example 
CultureInfo enUS = new CultureInfo("en-US"); 
 

string dateString; 
System.DateTime dateValue; 
Parse date with no style flags. 
dateString = " 5/01/2009 8:30 AM"; 
if (DateTime.TryParseExact(dateString, "g", enUS, DateTimeStyles.None, out dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
// Allow a leading space in the date string. 
if(DateTime.TryParseExact(dateString, "g", enUS, DateTimeStyles.AllowLeadingWhite, out dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
Use custom formats with M and MM. 
dateString = "5/01/2009 09:00"; 
if(DateTime.TryParseExact(dateString, "M/dd/yyyy hh:mm", enUS, DateTimeStyles.None, out dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
// Allow a leading space in the date string. 
if(DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm", enUS, DateTimeStyles.None, out 
dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
Parse a string with time zone information. 
dateString = "05/01/2009 01:30:42 PM -05:00"; 
if (DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS, DateTimeStyles.None, out 
dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
 

// Allow a leading space in the date string. 
if (DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS, 
DateTimeStyles.AdjustToUniversal, out dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
Parse a string represengting UTC. 
dateString = "2008-06-11T16:11:20.0904778Z"; 
if(DateTime.TryParseExact(dateString, "o", CultureInfo.InvariantCulture, DateTimeStyles.None, out 
dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
if (DateTime.TryParseExact(dateString, "o", CultureInfo.InvariantCulture, 
DateTimeStyles.RoundtripKind, out dateValue)) 
{ 
Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); 
} 
else 
{ 
Console.WriteLine("'{0}' is not in an acceptable format.", dateString); 
} 
Outputs 
' 5/01/2009 8:30 AM' is not in an acceptable format. 
Converted ' 5/01/2009 8:30 AM' to 5/1/2009 8:30:00 AM (Unspecified). 
Converted '5/01/2009 09:00' to 5/1/2009 9:00:00 AM (Unspecified). 
'5/01/2009 09:00' is not in an acceptable format. 
Converted '05/01/2009 01:30:42 PM -05:00' to 5/1/2009 11:30:42 AM (Local). 
Converted '05/01/2009 01:30:42 PM -05:00' to 5/1/2009 6:30:42 PM (Utc). 
Converted '2008-06-11T16:11:20.0904778Z' to 6/11/2008 9:11:20 AM (Local). 
Converted '2008-06-11T16:11:20.0904778Z' to 6/11/2008 4:11:20 PM (Utc). 

0 Comment's

Comment Form

Submit Comment