2011-01-14 4 views
3

IchC# Parse Datumzeit "Fr 14. Januar 2011 14.56.36 GMT-0800 (Pacific Standard Time)"

tun
DateTime dt = DateTime.ParseExact(stringDate, "ddd MMM dd yyyy HH:mm:ss UTCzzzzz zzzz", System.Globalization.CultureInfo.InvariantCulture); 

Aber, dass ein Fehler generiert (der Fehler war zu diesem Zeitpunkt war nicht im richtigen Format). Weißt du was die richtige Syntax ist?

Das Datum ist:

Fr 14. Januar 2011 15.00.39 GMT-0800 (Pacific Standard Time)

+1

Welchen Fehler bekommen Sie? –

+0

Der Fehler war, dass das Datum nicht im richtigen Format war. – rksprst

Antwort

0

Ist Fri Jan 14 2011 15:00:39 GMT-0800 (Pacific Standard Time), was in Ihrer Zeit-String enthalten ist? Wenn dies der Fall ist, ist Ihre Formatmaske oder Ihre Eingabezeichenfolge falsch. Bitte beziehen Sie sich auf die MSDN-Bibliothek.

Diese Probe aus dem

// Parse date and time with custom specifier. 
//   Fri Jan 14 2011 15:00:39 GMT-0800 
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); 
} 

API documentation genommen Wenn ich eine Vermutung nehmen musste, sind Sie die richtige Zeitzone Format nicht bereitstellt.

4

Dies scheint zu funktionieren, wenn Sie das Ende der Zeichenfolge entfernen.

var stringDate = "Fri Jan 14 2011 15:00:39 GMT-0800"; 
var dt = DateTime.ParseExact(
     stringDate, 
     "ddd MMM dd yyyy HH:mm:ss 'GMT'zzz", 
     System.Globalization.CultureInfo.InvariantCulture); 
Verwandte Themen