• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

C#DateTime时间操作

互联网 diligentman 5天前 7次浏览

获取时间

1.例如	2020/11/18 19:33:49
	DateTime dt = DateTime.Now;
	Console.WriteLine(dt.ToString());
	
 2.例如	2020/11/18
	string strdt=dt.ToShortDateString();
	
3.例如	2020年11月
	string strdt = dt.GetDateTimeFormats('y')[0].ToString();
	
4.例如	2020年11月18日
	 string strdt = dt.GetDateTimeFormats('D')[0].ToString();
	或者
	string.Format("{0:D}",dt); 
	
5.例如	11月18日
	string strdt = dt.GetDateTimeFormats('M')[0].ToString();
	或者
	string.Format("{0:M}",dt);

C#常用的时间处理函数

// 计算2个日期之间的天数差
 		DateTime dt1 = Convert.ToDateTime("2020-11-18");
        DateTime dt2 = Convert.ToDateTime("2021-01-01");
        TimeSpan span = dt2.Subtract(dt1);
        int dayDiff = span.Days + 1;
        Console.WriteLine(dayDiff);//45

// 计算某年某月的天数
int days = DateTime.DaysInMonth(2020, 11);//30

// 给日期增加一天、减少一天
dt.AddDays(1); //增加一天
dt.AddDays(-1);//减少一天

//本年的天数 是否是闰年          
int daysInYear = DateTime.IsLeapYear(DateTime.Now.Year) ? 366 : 365;
//本月的最后一天 本月1号加一个月得下月1号,再剪掉一天就是本月最后一天
DateTime lastDayInMonth = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddMonths(1).AddDays(-1);

//得到星期几 星期天为7
int dayOfWeek = Convert.ToInt32(DateTime.Now.DayOfWeek) < 1 ? 7 : Convert.ToInt32(DateTime.Now.DayOfWeek);

//本周一
DateTime monday = new DateTime(DateTime.Now.Year,DateTime.Now.Month,DateTime.Now.Day).AddDays(1 - dayOfWeek);

//本周 星期天

DateTime sunday = monday.AddDays(6);

//本周 星期天的午夜

DateTime sunday2 = monday.AddDays(7).AddMilliseconds(-3);

//本季度第一天

DateTime firsyDayInQuarter = new DateTime(DateTime.Now.Year, DateTime.Now.Month - (DateTime.Now.Month - 1) % 3, 1);

//本季度最后一天

DateTime lastDayInQuarter = firsyDayInQuarter.AddMonths(3).AddDays(-1);

//本季度最后一天的午夜
DateTime lastDayInQuarter2 = firsyDayInQuarter.AddMonths(3).AddMilliseconds(-3);

string datetime = "10-Jul-09";

string newdatetime = DateTime.Parse(datetime, new System.Globalization.CultureInfo("de-de")).ToString("yyyyMMdd");
 //计算上个礼拜四的时间日期,思路是   回到这个礼拜一,然后再减去4天就是上礼拜4
            int dayOfWeek = Convert.ToInt32(DateTime.Now.DayOfWeek) < 1 ? 7 : Convert.ToInt32(DateTime.Now.DayOfWeek);
            DateTime monday = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day).AddDays(1 - dayOfWeek-4);
            Console.WriteLine(monday);


喜欢 (0)