///// <summary> ///// Y=year ///// M=minutes ///// D=day of month ///// DW=day of week ///// DY=day of yeare ///// H=hour ///// m=minutes ///// s=second ///// </summary> ///// <param name="format">ex:YY/MM or DW or HH:mm</param> ///// <returns></returns> //public string ToString(string format) //{ // char[] part = format.ToCharArray(); //} public string ToString(PersianDateType format, char dateseperator, char dateandtimeseperaitor, char timeseperator) { if (format == PersianDateType.YYMMDD) { return(Convert.ToString(Year % 10 + ((Year / 10) % 10) * 10) + dateseperator + SetStandard(Month) + dateseperator + SetStandard(Day)); } else if (format == PersianDateType.YYMMDDHHMM) { return(Convert.ToString(Year % 10 + ((Year / 10) % 10) * 10) + dateseperator + SetStandard(Month) + dateseperator + SetStandard(Day) + dateandtimeseperaitor + SetStandard(Hour) + timeseperator + SetStandard(Minute)); } else if (format == PersianDateType.YYMMDDHHMMSS) { return(Convert.ToString(Year % 10 + ((Year / 10) % 10) * 10) + dateseperator + SetStandard(Month) + dateseperator + SetStandard(Day) + dateandtimeseperaitor + SetStandard(Hour) + timeseperator + SetStandard(Minute) + timeseperator + SetStandard(Secend)); } else if (format == PersianDateType.YYYYMMDD) { return(Convert.ToString(Year) + dateseperator + SetStandard(Month) + dateseperator + SetStandard(Day)); } else if (format == PersianDateType.YYYYMMDDHHMM) { return(Convert.ToString(Year) + dateseperator + SetStandard(Month) + dateseperator + SetStandard(Day) + dateandtimeseperaitor + SetStandard(Hour) + timeseperator + SetStandard(Minute)); } else if (format == PersianDateType.HHMM) { return(SetStandard(Hour) + timeseperator + SetStandard(Minute)); } else if (format == PersianDateType.YYMM) { return(Convert.ToString(Year % 10 + ((Year / 10) % 10) * 10) + dateseperator + SetStandard(Month)); } else { return(Convert.ToString(Year) + dateseperator + SetStandard(Month) + dateseperator + SetStandard(Day) + dateandtimeseperaitor + SetStandard(Hour) + timeseperator + SetStandard(Minute) + timeseperator + SetStandard(Secend)); } }
public static string TostringForGrid(PersianDateTime date, PersianDateType format) { if (date == null) { return("---"); } return(date.ToString(format)); }
// private static YearMonthDay GetYearMonthDay(string persianDate, PersianDateType persianDateType) { switch (persianDateType) { case PersianDateType.SixChar: return(GetYearMonthDay6Digit(persianDate)); case PersianDateType.EightCharWithoutSlash: return(GetYearMonthDay8DigitWithoutSlash(persianDate)); case PersianDateType.EightCharWithSlash: return(GetYearMonthDay8DigitWithSlash(persianDate)); case PersianDateType.TenChar: return(GetYearMonthDay10(persianDate)); default: throw new NotSupportedException(); } }
internal static string GetJalaliDate(DateTime dateTime, PersianDateType persianDateType) { var yearMonthDay = YearMonthDayManager.GetYearMonthDay(dateTime); switch (persianDateType) { case PersianDateType.EightCharWithoutSlash: return(GetJalaliDateEightCharWithoutSlash(yearMonthDay)); case PersianDateType.EightCharWithSlash: return(GetJalaliDateEightCharWithSlash(yearMonthDay)); case PersianDateType.SixChar: return(GetJalaliDateSixChar(yearMonthDay)); case PersianDateType.TenChar: return(GetJalaliDateTenChar(yearMonthDay)); default: throw new NotImplementedException(); } }
public static string GetJalaliDate(DateTime dateTime, PersianDateType persianDateType) { return(DateConvertor.GetJalaliDate(dateTime, persianDateType)); }
/// <summary> /// /// </summary> /// <param name="format"></param> /// <returns></returns> public string ToString(PersianDateType format) { return(ToString(format, '/', ' ', ':')); }
/// <summary> /// /// </summary> /// <param name="datetime"></param> private void FillAtribute(string datetime, PersianDateType format, char dateseparater, char dateandtimeseparater, char timesparater) { Persiancalender = new PersianCalendar(); string[] part = datetime.Split(dateseparater, dateandtimeseparater, timesparater); if (format == PersianDateType.YYMMDD) { Year = 1300 + Convert.ToInt16(part[0]); Month = Convert.ToInt16(part[1]); Day = Convert.ToInt16(part[2]); Hour = 0; Minute = 0; Secend = 0; } else if (format == PersianDateType.YYMMDDHHMM) { Year = 1300 + Convert.ToInt16(part[0]); Month = Convert.ToInt16(part[1]); Day = Convert.ToInt16(part[2]); Hour = Convert.ToInt16(part[3]); Minute = Convert.ToInt16(part[4]); Secend = 0; } else if (format == PersianDateType.YYMMDDHHMMSS) { Year = 1300 + Convert.ToInt16(part[0]); Month = Convert.ToInt16(part[1]); Day = Convert.ToInt16(part[2]); Hour = Convert.ToInt16(part[3]); Minute = Convert.ToInt16(part[4]); Secend = Convert.ToInt16(part[5]); } else if (format == PersianDateType.YYYYMMDD) { Year = Convert.ToInt16(part[0]); Month = Convert.ToInt16(part[1]); Day = Convert.ToInt16(part[2]); Hour = 0; Minute = 0; Secend = 0; } else if (format == PersianDateType.YYYYMMDDHHMM) { Year = Convert.ToInt16(part[0]); Month = Convert.ToInt16(part[1]); Day = Convert.ToInt16(part[2]); Hour = Convert.ToInt16(part[3]); Minute = Convert.ToInt16(part[4]); Secend = 0; } else if (format == PersianDateType.YYYYMMDDHHMMSS) { Year = Convert.ToInt16(part[0]); Month = Convert.ToInt16(part[1]); Day = Convert.ToInt16(part[2]); Hour = Convert.ToInt16(part[3]); Minute = Convert.ToInt16(part[4]); Secend = Convert.ToInt16(part[5]); } else { MyException ex = new MyException("invalid string format", 204, "PersianDateTime"); throw ex; } }
/// <summary> /// zakhire kardan tarikh shamsi /// </summary> /// <param name="datetime">tarikh shamsi</param> /// <param name="format">noe format tarikhi mojod dar datetime</param> /// <param name="dateseparater">characteri ke beye tarikh vojod darad dar datetime</param> /// <param name="dateandtimeseparater">characteri ke beyne tarikh va zaman vojod darad dar datetime</param> /// <param name="timesparater">characteri ke beyne zaman vojod darad dar datetime</param> public PersianDateTime(string datetime, PersianDateType format, char dateseparater, char dateandtimeseparater, char timesparater) { Persiancalender = new PersianCalendar(); FillAtribute(datetime, format, dateseparater, dateandtimeseparater, timesparater); }