收藏 分销(赏)

C#时间操作类时间计算等.doc

上传人:丰**** 文档编号:9748223 上传时间:2025-04-05 格式:DOC 页数:4 大小:28KB 下载积分:5 金币
下载 相关 举报
C#时间操作类时间计算等.doc_第1页
第1页 / 共4页
C#时间操作类时间计算等.doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
  一个C#时间工具类,可用于时间计算,比如根据出生年月实现生日提醒、两个日期天数比较、根据英文的星期几返回中文的星期几、计算两个时间的差值,返回的是x天x小时x分钟x秒、时间相差值、根据时间返回几个月前,几天前,几小时前,几分钟前以及几秒前,现在用不到的话,先收藏吧,代码如下:   001using System;   002using System.Collections.Generic;   003using System.Linq;   004using System.Text;   005namespace CLB.Utility.CharTools   006{   007 public static class DateTimeHelper   008 {   009 ////   010 /// 根据时间返回几个月前,几天前,几小时前,几分钟前以及几秒前   011 ///   012 ///   013 ///   014 public static string DateStringFromNow(DateTime dt)   015 {   016 TimeSpan span = DateTime.Now - dt;   017 if (span.TotalDays > 60)   018 {   019 return dt.ToShortDateString();   020 }   021 else if (span.TotalDays > 30)   022 {   023 return "1个月前";   024 }   025 else if (span.TotalDays > 14)   026 {   027 return "2周前";   028 }   029 else if (span.TotalDays > 7)   030 {   031 return "1周前";   032 }   033 else if (span.TotalDays > 1)   034 {   035 return string.Format("{0}天前", (int)Math.Floor(span.TotalDays));   036 }   037 else if (span.TotalHours > 1)   038 {   039 return string.Format("{0}小时前", (int)Math.Floor(span.TotalHours));   040 }   041 else if (span.TotalMinutes > 1)   042 {   043 return string.Format("{0}分钟前", (int)Math.Floor(span.TotalMinutes));   044 }   045 else if (span.TotalSeconds >= 1)   046 {   047 return string.Format("{0}秒前", (int)Math.Floor(span.TotalSeconds));   048 }   049 else   050 {   051 return "1秒前";   052 }   053 }   054 ///   055 /// 时间相差值,返回时间差   056 /// 调用时,isTotal为true时,返回的时带小数的天数,否则返回的是整数   057 ///   058 ///   059 ///   060 ///   061 ///   062 public static string DateDiff(DateTime DateTime1, DateTime DateTime2, bool isTotal)   063 {   064 TimeSpan ts = DateTime2 - DateTime1;   065 if (isTotal)   066 //带小数的天数,比如1天12小时结果就是1.5   067 return ts.TotalDays.ToString();   068 else   069 //整数天数,1天12小时或者1天20小时结果都是1   070 return ts.Days.ToString();   071 }   072 ///   073 /// 计算两个时间的差值,返回的是x天x小时x分钟x秒   074 ///   075 ///   076 ///   077 ///   078 public static string DateDiff(DateTime DateTime1, DateTime DateTime2)   079 {   080 string dateDiff = null;   081 TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);   082 TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);   083 TimeSpan ts = ts1.Subtract(ts2).Duration();   084 //TimeSpan ts=ts1.Add(ts2).Duration();   085 dateDiff = ts.Days.ToString() + "天" + ts.Hours.ToString() + "小时" + ts.Minutes.ToString() + "分钟"+ ts.Seconds.ToString() + "秒";   086 return dateDiff;   087 }   088 ///   089 /// 根据英文的星期几返回中文的星期几   090 /// 如WhichDay("Sunday"),返回星期日   091 ///   092 ///   093 ///   094 public static string WhichDay(string enWeek)   095 {   096 switch (enWeek.Trim())   097 {   098 case "Sunday":   099 return "星期日";   100 case "Monday":   101 return "星期一";   102 case "Tuesday":   103 return "星期二";   104 case "Wednesday":   105 return "星期三";   106 case "Thursday":   107 return "星期四";   108 case "Friday":   109 return "星期五";   110 case "Saturday":   111 return "星期六";   112 default:   113 return enWeek;   114 }   115 }   116 ///   117 /// 日期比较   118 ///   119 /// 当前日期   120 /// 输入日期   121 /// 比较天数   122 /// 大于天数返回true,小于返回false   123 public static bool CompareDate(string today, string writeDate, int n)   124 {   125 DateTime Today = Convert.ToDateTime(today);   126 DateTime WriteDate = Convert.ToDateTime(writeDate);   127 WriteDate = WriteDate.AddDays(n);   128 if (Today >= WriteDate)   129 return false;   130 else   131 return true;   132 }   133 ///   134 /// 根据出生年月进行生日提醒   135 ///   136 ///   137 ///   138 public static string GetBirthdayTip(DateTime birthday)   139 {   140 DateTime now = DateTime.Now;   141 //TimeSpan span = DateTime.Now - birthday;   142 int nowMonth = now.Month;   143 int birtMonth = birthday.Month;   144 if (nowMonth == 12 && birtMonth == 1)   145 return string.Format("下月{0}号", birthday.Day);   146 if (nowMonth == 1 && birtMonth == 12)   147 return string.Format("上月{0}号", birthday.Day);   148 int months = now.Month - birthday.Month;   149 //int days = now.Day - birthday.Day;   150 if (months == 1)   151 return string.Format("上月{0}号", birthday.Day);   152 else if (months == -1)   153 return string.Format("下月{0}号", birthday.Day);   154 else if (months == 0)   155 {   156 if (now.Day == birthday.Day)   157 return "今天";   158 return string.Format("本月{0}号", birthday.Day);   159 }   160 else if (months > 1)   161 return string.Format("已过{0}月", months);   162 else   163 return string.Format("{0}月{1}日", birthday.Month, birthday.Day);   164 }   165 }   166}   更多信息请查看IT技术专栏   
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服