現在我用回曆日期的工作,並試圖將它們轉換爲使用下面的代碼陽曆日期轉換:無法從回曆日期公曆日期(C#)
string HijriDate;
string[] allFormats ={"yyyy/MM/dd","yyyy/M/d",
"dd/MM/yyyy","d/M/yyyy",
"dd/M/yyyy","d/MM/yyyy","yyyy-MM-dd",
"yyyy-M-d","dd-MM-yyyy","d-M-yyyy",
"dd-M-yyyy","d-MM-yyyy","yyyy MM dd",
"yyyy M d","dd MM yyyy","d M yyyy",
"dd M yyyy","d MM yyyy","MM/dd/yyyy"};
CultureInfo enCul = new CultureInfo("en-US");
CultureInfo arCul = new CultureInfo("ar-SA");
arCul.DateTimeFormat.Calendar = new System.Globalization.HijriCalendar();
DateTime tempDate = DateTime.ParseExact(HijriDate, allFormats, arCul.DateTimeFormat, DateTimeStyles.AllowWhiteSpaces);
return tempDate.ToString("MM/dd/yyyy");
此代碼工作正常與所有日期除外月如第30天的日期如下:
'30/10/1433','30/12/1432'或'30/05/1433'等.....所以如何處理和將該日期轉換爲其相應的公曆:S
是啊我的問題是,當你處理回教日期它不是像格里高利的幾個月不變,因爲它取決於新月所以也許第5個月是今年30天,但明年也許只有29天,所以問題通常將與第30天任何月份,這是我現在的問題:S –
在這種情況下,您必須創建自己的函數,如'DateTime.DaysInMonth(year,month)',您將在其中發送年份和月份,並且它將返回該月份的日期。 –