在 C# 中将标准日期转换为标准波斯日期
convert standard date to standard persian date in c#
我有一个函数可以将标准日期转换为波斯标准日期,您可以在此处看到:
public string ConvertToPersianToShow(DateTime datetime)
{
PersianCalendar persian_date = new PersianCalendar();
string date;
string year = Convert.ToString(persian_date.GetYear(datetime));
string Month = Convert.ToString(persian_date.GetMonth(datetime));
string day = Convert.ToString(persian_date.GetDayOfMonth(datetime));
date = year+"/" + Month + "/" + day;
return date;
}
但我对这些输出有疑问:
1394/5/1
1394/12/8
1395/7/12
这些输出应该是这样的:
1394/05/01
1394/12/08
1395/07/12
我可以计算日期和月份的数字,但我认为这不是最好的方法。你能帮我一些关于如何使用 [=13 更改这些输出的帮助吗? =]?
您只需添加一个前导零即可。 .ToString
可以用
string Month = persian_date.GetMonth(datetime).ToString("D2");
string day = persian_date.GetDayOfMonth(datetime).ToString("D2");
你可以使用这个功能:
private static string UpdateDate(string date)
{
date.PadLeft(2, '0');
}
date = year+"/" + UpdateDate(Month) + "/" + UpdateDate(day);
我有一个函数可以将标准日期转换为波斯标准日期,您可以在此处看到:
public string ConvertToPersianToShow(DateTime datetime)
{
PersianCalendar persian_date = new PersianCalendar();
string date;
string year = Convert.ToString(persian_date.GetYear(datetime));
string Month = Convert.ToString(persian_date.GetMonth(datetime));
string day = Convert.ToString(persian_date.GetDayOfMonth(datetime));
date = year+"/" + Month + "/" + day;
return date;
}
但我对这些输出有疑问:
1394/5/1
1394/12/8
1395/7/12
这些输出应该是这样的:
1394/05/01
1394/12/08
1395/07/12
我可以计算日期和月份的数字,但我认为这不是最好的方法。你能帮我一些关于如何使用 [=13 更改这些输出的帮助吗? =]?
您只需添加一个前导零即可。 .ToString
可以用
string Month = persian_date.GetMonth(datetime).ToString("D2");
string day = persian_date.GetDayOfMonth(datetime).ToString("D2");
你可以使用这个功能:
private static string UpdateDate(string date)
{
date.PadLeft(2, '0');
}
date = year+"/" + UpdateDate(Month) + "/" + UpdateDate(day);