Beispiel #1
0
 /// <summary>
 /// dt1-dt2的天数
 /// </summary>
 /// <param name="dt1"></param>
 /// <param name="dt2"></param>
 /// <returns></returns>
 public static DoubleStd DayDiff(DateTimeStd dt1, DateTimeStd dt2)
 {
     if (dt1 == null || dt2 == null)
     {
         return(null);
     }
     else
     {
         TimeSpan ts = dt1 - dt2;
         return(DoubleStd.ParseStd(ts.TotalDays));
     }
 }
        /// <summary>
        /// 转换成DateTimeStd
        /// </summary>
        /// <param name="o"></param>
        /// <returns></returns>
        public static DateTimeStd ParseStd(object o)
        {
            if (IsDateTime(o))
            {
                List <string> formats = new List <string>();
                formats.Add("yyyyMMdd");
                formats.Add("yyyy/MM/dd");
                formats.Add("yyyy-MM-dd");
                formats.Add("yyyyMMddHHmmss");
                formats.Add("yyyyMMddHHmmssfff");
                formats.Add("yyyy/MM/dd HH:mm");
                formats.Add("yyyy/MM/dd HH:mm:ss");
                formats.Add("yyyy/MM/dd HH:mm:ss fff");
                formats.Add("yyyy-MM-dd HH:mm");
                formats.Add("yyyy-MM-dd HH:mm:ss");
                formats.Add("yyyy-MM-dd HH:mm:ss fff");
                formats.Add("yyyyMd");
                formats.Add("yyyy/M/d");
                formats.Add("yyyy-M-d");
                formats.Add("yyyyMdHHmmss");
                formats.Add("yyyyMdHHmmssfff");
                formats.Add("yyyy/M/d HH:mm");
                formats.Add("yyyy/M/d H:m");
                formats.Add("yyyy/M/d HH:mm:ss");
                formats.Add("yyyy/M/d H:m:s");
                formats.Add("yyyy/M/d HH:mm:ss fff");
                formats.Add("yyyy/M/d H:m:s f");
                formats.Add("yyyy-M-d HH:mm");
                formats.Add("yyyy-M-d H:m");
                formats.Add("yyyy-M-d HH:mm:ss");
                formats.Add("yyyy-M-d H:m:s");
                formats.Add("yyyy-M-d HH:mm:ss fff");
                formats.Add("yyyy-M-d H:m:s f");
                formats.Add("r");

                if (o.GetType() == typeof(DateTime))
                {
                    DateTimeStd rtn = new DateTimeStd((DateTime)o);
                    return(rtn);
                }
                else
                {
                    return(ParseStd(o, formats.ToArray()));
                }
            }
            else
            {
                return(null);
            }
        }
Beispiel #3
0
 /// <summary>
 /// 转换成DateTimeStd
 /// </summary>
 /// <param name="o"></param>
 /// <param name="format"></param>
 /// <returns></returns>
 public static DateTimeStd ParseStd(object o, params string[] format)
 {
     if (IsDateTime(o, format))
     {
         DateTimeStd rtn = new DateTimeStd();
         if (o is DateTime)
         {
             rtn.Value = (DateTime)o;
         }
         else
         {
             rtn.Value = DateTime.ParseExact(o.ToString(), format, CultureInfo.CurrentCulture, DateTimeStyles.None);
         }
         return(rtn);
     }
     else
     {
         return(null);
     }
 }
Beispiel #4
0
        /// <summary>
        /// 獲取指定日期當前月份的總天數
        /// </summary>
        /// <param name="dt"></param>
        /// <returns></returns>
        public static int GetDaysOfMonth(DateTime dt)
        {
            DateTimeStd dts = new DateTimeStd(dt);

            return(dts.DayOfMonth);
        }