2011-11-25 28 views
6

thể trùng lặp:
GetMonthName: Valid values are between 1 and 13, inclusive. Why?Tại sao DateTimeInfo.MonthNames trả lại 13 thành viên?

Các mã sau đây:

DateTimeFormatInfo datetimeinfo = new CultureInfo("en-GB", false).DateTimeFormat; 
string[] months = datetimeinfo.MonthNames; 

lợi nhuận 13 thành viên, với 0 là tháng giêng và 13 là một chuỗi rỗng.

Tại sao điều này?

Không có vấn đề lớn vì tôi chỉ có thể xóa thành viên cuối cùng, nhưng tôi chỉ tự hỏi liệu có một điểm hay không.

+1

Dường như hỗ trợ lịch dựa trên các tháng âm lịch, hãy xem tại đây: http://stackoverflow.com/questions/5991766/getmonthname-valid-values-are-between-1-and-13-inclusive-why –

Trả lời

6

Một số lịch, đáng chú ý là Hebrew, có thể có 13 tháng. Điều này có xu hướng trong lịch âm lịch sử dụng các tháng âm lịch, và sau đó thêm một tháng thêm vài năm một lần để tránh bắt đầu năm thay đổi quá nhiều so với năm dương lịch.

+0

Nhưng đối với Văn hóa Hebrew, 'MonthNames' cũng trả về 12 tháng" thực "và một tháng trống ... –

+0

@Thomas Levesque có thể đơn giản chỉ là" tính năng "của việc triển khai MS. Ví dụ hàm chuyển đổi một chuỗi thành trường hợp tiêu đề (britain => Great Britain) hoạt động theo cách tương tự cho tiếng Nga, trong khi thực tế bằng tiếng Nga, chỉ viết hoa chữ cái đầu tiên của từ đầu tiên (great britain => Great Anh). –

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