2011-03-15 64 views
0

可能重複:
Convert string to datetime Using C#
Converting String to DateTime C#.net我如何將字符串轉換成datetime在C#

嗨, 我有包含日期​​時間的格式爲dd/mm的字符串/ yyyy hh:mm:ss.ms

即date/month/year hours:minutes:seconds.milliseconds。例如。 18/03/2011 15:16:57.487

如何轉換這個字符串使用C#

問候 cmrhema爲DateTime。

+3

你*確實*注意到* Relat編寫問題時出現的問題列表?那裏有很多重複的問題。 – 2011-03-15 15:51:04

+0

發表之前,爲什麼不搜索發佈問題時發佈的上一篇文章 – Dotnet 2011-03-15 15:51:47

+1

再次搜索,我發現這樣會更好一些(因爲它也指出'DateTime.TryParse'):[將字符串轉換爲C#中的DateTime ](http://stackoverflow.com/questions/1592653/convert-string-to-datetime-in-c/1592660#1592660) – 2011-03-15 15:55:09

回答

2

這裏是你的日期時間是在還保持格式解析的方式毫秒

 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); 
+0

韋斯格蘭特,我正在尋找上述答案。謝謝 – cmrhema 2011-03-21 14:41:43

4

您正在尋找DateTime.ParseExact

DateTime time = DateTime.ParseExact(
    "18/03/2011 15:16:57.487", 
    "dd/MM/yyyy HH:mm:ss.fff", 
    CultureInfo.InvariantCulture 
); 

注意MM意味着一個月,mm意味着分鐘,HH是24小時小時,hh是12小時小時,f是毫秒。

0
String str="04031985"; 

DateTime dt = DateTime.Parse(str); 
DateTime dt = DateTime.ParseExact(str, @"MMddyyyy", null); 
8

您可以使用DateTime.Parse或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); 
    } 

對於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); 
}