我有一个可以将标准日期转换为波斯标准日期的函数,如下所示:
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
我可以计算一天和一个月的数字,但我认为这不是最好的方法。请你帮助我如何使用stringformat
更改这些输出?
答案 0 :(得分:3)
您可以使用此功能:
private static string UpdateDate(string date)
{
date.PadLeft(2, '0');
}
date = year+"/" + UpdateDate(Month) + "/" + UpdateDate(day);
答案 1 :(得分:2)
您需要做的就是添加一个前导零。可以使用.ToString
。
string Month = persian_date.GetMonth(datetime).ToString("D2");
string day = persian_date.GetDayOfMonth(datetime).ToString("D2");