2013-01-16 41 views
12

Tôi có một ngày biểu diễn dưới dạng một chuỗi như vậyDateTime.Parse ngày định dạng

20130116154407 

tôi gọi DateTime.Parse về vấn đề này nhưng nó đã thất bại. Làm thế nào tôi có thể chuyển đổi nó thành một DateTime? Ngẫu nhiên múi giờ là CET.

EDIT

Các giải pháp được cung cấp là rất hữu ích, cho đến nay nhưng có vẻ như họ không hỗ trợ 24 đồng hồ giờ, vẫn đang tìm kiếm một giải pháp mà làm.

EDIT 2

Định dạng đúng là

DateTime.ParseExact(str, "yyyyMMddHHmmss", CultureInfo.InvariantCulture) 

Cảm ơn,

Sachin

+1

Những ngôn ngữ? –

+0

Tôi đã cập nhật các thẻ. –

Trả lời

15

Bạn cần phải xác định một định dạng:

DateTime.ParseExact(str, "yyyyMMddHHmmss", CultureInfo.InvariantCulture) 
+0

Tôi vẫn gặp lỗi "Chuỗi không được nhận dạng là Ngày giờ hợp lệ". –

4

Sử dụng mã này

string DATE_FORMAT= "yyyyMMddhhmmss"; 

DateTime date; 
if(DateTime.TryParseExact(str, DATE_FORMAT, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out date)) 
{ 
//success 
//you can use date 
}else 
{ 
//fail 
} 
2

Hãy thử DateTime.ParseExact

var dt = DateTime.ParseExact("20130116154407", "yyyyMMddhhmmss", CultureInfo.InvariantCulture); 
Các vấn đề liên quan