Пример #1
0
        ///// <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));
            }
        }
Пример #2
0
 public static string TostringForGrid(PersianDateTime date, PersianDateType format)
 {
     if (date == null)
     {
         return("---");
     }
     return(date.ToString(format));
 }
Пример #3
0
        //
        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();
            }
        }
Пример #4
0
        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();
            }
        }
Пример #5
0
 public static string GetJalaliDate(DateTime dateTime, PersianDateType persianDateType)
 {
     return(DateConvertor.GetJalaliDate(dateTime, persianDateType));
 }
Пример #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="format"></param>
 /// <returns></returns>
 public string ToString(PersianDateType format)
 {
     return(ToString(format, '/', ' ', ':'));
 }
Пример #7
0
        /// <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;
            }
        }
Пример #8
0
 /// <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);
 }