how do i convert string to datetime in c# [duplicate]
Possible Duplicates:开发者_如何学编程
Convert string to datetime Using C# Converting String to DateTime C#.net
Hi, I have a string which consists of datetime in the format dd/mm/yyyy hh:mm:ss.ms
i.e. date/month/year hours:minutes:seconds.milliseconds. eg. 18/03/2011 15:16:57.487
How do I convert this string to datetime using c#
Regards cmrhema.
You can use DateTime.Parse or DateTime.ParseExact
DateTime dateValue;
string dateString = "2/16/2008 12:15:12 PM";
try {
dateValue = DateTime.Parse(dateString);
Console.WriteLine("'{0}' converted to {1}.", dateString, dateValue);
}
catch (FormatException) {
Console.WriteLine("Unable to convert '{0}'.", dateString);
}
For ParseExact
dateString = "Sun 15 Jun 2008 8:30 AM -06:00";
format = "ddd dd MMM yyyy h:mm tt zzz";
try
{
result = DateTime.ParseExact(dateString, format, provider);
Console.WriteLine("{0} converts to {1}.", dateString, result.ToString());
}
catch (FormatException)
{
Console.WriteLine("{0} is not in the correct format.", dateString);
}
You're looking for DateTime.ParseExact
:
DateTime time = DateTime.ParseExact(
"18/03/2011 15:16:57.487",
"dd/MM/yyyy HH:mm:ss.fff",
CultureInfo.InvariantCulture
);
Note that MM
means month, mm
means minute, HH
is 24-hour hour, hh
is 12-hour hour, and f
is millisecond.
Here is a way to parse in the format that your DateTime is in and also maintain the milliseconds
string dtString = "18/03/2011 15:16:57.487";
System.Globalization.CultureInfo culture = System.Globalization.CultureInfo.CreateSpecificCulture("fr-FR");
DateTime dt = DateTime.Parse(dtString.Split('.')[0], culture);
Double milliseconds = Double.Parse(dtString.Split('.')[1]);
dt = dt.AddMilliseconds(milliseconds);
DateTime.ParseExact is what you want if you know the exact format of the date string.
Look at DateTime.Parse()
Convert.ToDateTime() http://msdn.microsoft.com/en-us/library/9xk1h71t.aspx
String str="04031985";
DateTime dt = DateTime.Parse(str);
DateTime dt = DateTime.ParseExact(str, @"MMddyyyy", null);
精彩评论