-2

我在我的程序中使用波斯日期(伊朗日期格式或 Jalali 日历)。

当我使用这个时:

string A = "1396/2/30";
string Test = String.Format("{0:yyyy/MM/dd}", Convert.ToDateTime(A));

我收到以下错误:

mscorlib.dll 中出现“System.FormatException”类型的异常,但未在用户代码中处理。附加信息:字符串未被识别为有效的日期时间。

4

1 回答 1

3

创建一个 fa-IR CultureInfo,然后尝试使用DataTime.ParseExact()而不是Convert.ToDateTime().

更新

var persianCultureInfo = new CultureInfo("fa-IR");
persianCultureInfo.DateTimeFormat.Calendar = new PersianCalendar();
string dateString = "1396/02/30";
DateTime MyDateTime = DateTime.ParseExact(dateString, "yyyy/MM/dd", persianCultureInfo);
于 2017-05-20T20:57:31.110 回答