2015-02-23 14 views
5

Böyle bir dizeyi şu şekilde nasıl ayrıştırabilirim: "2/22/2015 9:54:02 AM" bir DateTime örneğine mi?AM/PM içeren bir dizeyi DateTime'a nasıl dönüştürebilirim?

i anda DateTime.ParseExact yöntemi kullanılarak fakat AM/PM yani am:

DateTime.ParseExact("2/22/2015 9:54:02", "M/dd/yyyy HH:mm:ss") 

ben de AM/PM işaretlerini ayrıştırmak mümkün olmak istiyorum.

+2

https://msdn.microsoft.com/en-us/library/8kb3ddd4%28v=vs.110%29.aspx – Ako

cevap

11

Böyle küçük harfe saat formatını (H) değişmelidir:

DateTime.ParseExact("2/22/2015 9:54:02 AM", "M/d/yyyy h:mm:ss tt", CultureInfo.InvariantCulture); 
Büyük harf "H" "h" 12 saatlik zamanı gösterir ve AM saygı göstereceğiz 24 saat zaman ve küçük harf gösterir

Aday dizesinde/PM.

4

Sen tt belirtici kullanabilirsiniz:

DateTime.ParseExact(
    "2/22/2015 9:54:02 PM", 
    "M/dd/yyyy h:mm:ss tt", 
    CultureInfo.InvariantCulture 
) 

Ancak bu yerel spesifik olabilir uyarılmalıdır. Ayrıca HH, AM/PM ile genellikle 12 saatlik saati kullandığınız 24 saatlik saati ifade eder, bu nedenle hh veya sadece h kullanmak istersiniz.

+0

2 bağımsız değişken – Fazal

+0

yapmayız Bu fonksiyon @ Fazal Haklısın. Sabit. – Lloyd

2

Bu deneyin,

DateTime.ParseExact("2/22/2015 9:54:02 PM", "M/dd/yyyy h:mm:ss tt", CultureInfo.InvariantCulture); 
İlgili konular