/// <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); } }
/// <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); } }
/// <summary> /// 獲取指定日期當前月份的總天數 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static int GetDaysOfMonth(DateTime dt) { DateTimeStd dts = new DateTimeStd(dt); return(dts.DayOfMonth); }