【发布时间】:2020-02-01 22:11:59
【问题描述】:
我想将希伯来日期(犹太)转换为公历; 我该怎么做? 我试过了,但它不起作用:
string birth = txtBearthDay.Text+" "+ txtBearthMonth.Text+" " + txtBearthYear.Text;
HebrewCalendar hc = new HebrewCalendar();
CultureInfo jewishCulture = CultureInfo.CreateSpecificCulture("he-IL");
jewishCulture.DateTimeFormat.Calendar = hc;
dt = DateTime.Parse(birth,jewishCulture.DateTimeFormat);
【问题讨论】:
-
使用日期是一种痛苦。能把人逼疯的那种:youtube.com/watch?v=-5wpm-gesOY |话虽如此,对于 Unix 纪元 (1.1.1970) 开始之后的日期,.NET 具有 exceptional 支持。通常,诸如 Callendar、Culture 和 Formats 之类的东西都是从 Windows 中提取的。但当然你可以覆盖它。我实际上找到了这个小例子:stackoverflow.com/a/19075881/3346583
-
限制的原因是,内部所有 taht DateTime 保存的是自 Unix 纪元开始以来的 Ticks 数。所有其他属性——包括字符串表示——只是对该值的解释。对于 Unix 纪元之前的日期,它变为 Historian Hard。
-
您可以在代码中将
Bearth的拼写更正为Birth,这样不会让人分心吗? -
显然人们讨厌我给你相关的背景信息,所以我不得不删除我的答案。