2010-01-01 86 views

Trả lời

14
var userdateformat = DateTime.ParseExact("20101020", "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture); 

Sửa đổi như bạn muốn sửa đổi.

+0

Cảm ơn, Nó giúp tôi rất nhiều. –

-3
string strStartDateMain = "20100102"; 
string strStartDateFinal = new DateTime(Convert.ToInt32strStartDateMain.Substring(0, 4)), Convert.ToInt32(strStartDateMain.Substring(4, 2)), Convert.ToInt32(strStartDateMain.Substring(6))).ToString("dd/MM/yyyy"); 
+0

Tôi nhận được câu trả lời này bằng cách thực hiện R & D về chủ đề đó. Ở đây Nếu chúng ta có một chuỗi như "20100102", Hơn chúng ta có thể nhận được kết quả như "02/01/2010" – Ashish

+3

Bah, đây thực sự không phải là cách để làm điều đó. – Noldorin

+0

Phân tích ngày tùy chỉnh FTL. Đừng sáng tạo lại bánh xe. – Aaronaught

9
IFormatProvider culture = new CultureInfo("en-EN", false); // use your culture info 
DateTime dt = DateTime.ParseExact(myDateTimeString, "yyyyMMdd", culture, DateTimeStyles.NoCurrentDateDefault); 

yyyyMMdd là định dạng đầu vào đây.

Và sau đó nếu bạn muốn chuyển nó sang chuỗi:

String output = String.Format("{0:dd/MM/yyyy}", dt); 
+0

Quyền - ngoại trừ việc có thể có nghĩa là sử dụng 'CultureInfo.CurrentCulture' hoặc' CultureInfo.InvariantCulture' phụ thuộc vào kịch bản. – Noldorin

+0

Tôi đã thay đổi ghi đè người dùng thành sai. Vì vậy, nó sử dụng mặc định ngay bây giờ. Nhưng nó sẽ không gây ra bất kỳ vấn đề ở đây ngay cả khi nó ghi đè. Hoặc là tôi sai? – JCasso

9
var result = DateTime.ParseExact("20100102", "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture); 

Sửa khi cần thiết.

Các vấn đề liên quan