理论上,您可以CultureInfo
为埃塞俄比亚加载对应的语言/国家。埃塞俄比亚的母语似乎是阿姆哈拉语,其 ISO 639 短代码为“am”,埃塞俄比亚的 ISO 3166 国家代码为“ET”。因此,埃塞俄比亚的正确文化代码似乎是“am-ET”。因此,请尝试以下操作。
CultureInfo ethiopia = new CultureInfo("am-ET");
int year = 2002; // it is currently 2002 in Ethiopia
int months = ethiopia.Calendar.GetMonthsInYear(year);
for (int i = 1; i <= months; i++) {
Console.WriteLine(ethiopia.Calendar.GetDaysInMonth(year, i));
}
然后,因为它是第 13 个月,有五天或几天
DateTime time = new DateTime(2002, 13, 5, ethiopia.Calendar);
将是合法的。
如果由于某种原因不起作用,您还可以查看如何使用越南农历上的这个 CodeProject 创建自定义日历作为示例。