zoukankan      html  css  js  c++  java
  • C#实现根据日期计算星期

            /// <summary>
            /// 根据日期返回 星期(返回结果为英文)
            /// </summary>
            /// <param name="date">日期</param>
            /// <returns>星期</returns>
            public string ConvertDateToENWeek(DateTime date)
            {
                DayOfWeek dt = new DateTime(date.Year, date.Month, date.Day).DayOfWeek;
                return dt.ToString();
            }
    
            /// <summary>
            /// 根据日期返回 星期(返回结果为中文)
            /// </summary>
            /// <param name="date">日期</param>
            /// <returns>星期</returns>
            public string ConvertDateToZHWeek(DateTime date)
            {
                string week = string.Empty;
                DayOfWeek weekstr = new DateTime(date.Year, date.Month, date.Day).DayOfWeek;
                switch (weekstr.ToString())
                {
                    case "Monday": week = "星期一"; break;
                    case "Tuesday": week = "星期二"; break;
                    case "Wednesday": week = "星期三"; break;
                    case "Thursday": week = "星期四"; break;
                    case "Friday": week = "星期五"; break;
                    case "Saturday": week = "星期六"; break;
                    case "Sunday": week = "星期天"; break;
                }
                return week;
            }
    
         /// <summary>
            /// 将DateTime类型日期转换为时间
            /// </summary>
            /// <param name="date"></param>
            /// <returns></returns>
            public int CovertDateToInt(DateTime date)
            {
                try
                {
                    string content = date.ToString().Substring(0, 10);
                    char str = '-';
                    if (content.Contains("-")) str = '-';
                    if (content.Contains("/")) str = '/';
                    if (content.Contains(".")) str = '.';
    
                    string[] items = content.ToString().Split(str);
                    int value = int.Parse(items[0] + items[1] + items[2]);
    
                    return value;
                }
                catch
                {
                    return 0;
                }
            }
    
            /// <summary> 
            /// 计算本周的周一日期 
            /// </summary> 
            /// <returns></returns> 
            public DateTime GetMondayDate()
            {
                return GetMondayDate(DateTime.Now);
            }
            /// <summary> 
            /// 计算本周周日的日期 
            /// </summary> 
            /// <returns></returns> 
            private DateTime GetSundayDate()
            {
                return GetSundayDate(DateTime.Now);
            }
    
            /// <summary> 
            /// 计算某日起始日期(礼拜一的日期) 
            /// </summary> 
            /// <param name="someDate">该周中任意一天</param> 
            /// <returns>返回礼拜一日期,后面的具体时、分、秒和传入值相等</returns> 
            public DateTime GetMondayDate(DateTime someDate)
            {
                int i = someDate.DayOfWeek - DayOfWeek.Monday;
                if (i == -1) i = 6;// i值 > = 0 ,因为枚举原因,Sunday排在最前,此时Sunday-Monday=-1,必须+7=6。 
                TimeSpan ts = new TimeSpan(i, 0, 0, 0);
                return someDate.Subtract(ts);
            }
            /// <summary> 
            /// 计算某日结束日期(礼拜日的日期) 
            /// </summary> 
            /// <param name="someDate">该周中任意一天</param> 
            /// <returns>返回礼拜日日期,后面的具体时、分、秒和传入值相等</returns> 
            public DateTime GetSundayDate(DateTime someDate)
            {
                int i = someDate.DayOfWeek - DayOfWeek.Sunday;
                if (i != 0) i = 7 - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。 
                TimeSpan ts = new TimeSpan(i, 0, 0, 0);
                return someDate.Add(ts);
            }

    格式化日期:

    this.btnSeven.Text = date.AddDays(6).ToString("yyyy-MM-dd 
    dddd");
             
    this.tBlockTime.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss dddd");
    
    this.tBlockTime.Text = DateTime.Now.ToString("yyyy:MM:dd");   //yyyy年MM月dd日
    
    //获得星期
    //this.tBlockTime.Text = DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("zh-cn"));
    
    this.tBlockTime.Text = DateTime.Now.ToString("yyyy-MM-dd dddd HH:mm:ss");



    DateTime dt = DateTime.Now;
    Label1.Text = dt.ToString();//2005-11-5 13:21:25
    Label2.Text = dt.ToFileTime().ToString();//127756416859912816

    Label3.Text = dt.ToFileTimeUtc().ToString();//127756704859912816
    Label4.Text = dt.ToLocalTime().ToString();//2005-11-5 21:21:25
    Label5.Text = dt.ToLongDateString().ToString();//2005年11月5日
    Label6.Text = dt.ToLongTimeString().ToString();//13:21:25
    Label7.Text = dt.ToOADate().ToString();//38661.5565508218
    Label8.Text = dt.ToShortDateString().ToString();//2005-11-5
    Label9.Text = dt.ToShortTimeString().ToString();//13:21
    Label10.Text = dt.ToUniversalTime().ToString();//2005-11-5 5:21:25
    Label1.Text = dt.Year.ToString();//2005
    Label2.Text = dt.Date.ToString();//2005-11-5 0:00:00
    Label3.Text = dt.DayOfWeek.ToString();//Saturday
    Label4.Text = dt.DayOfYear.ToString();//309
    Label5.Text = dt.Hour.ToString();//13
    Label6.Text = dt.Millisecond.ToString();//441
    Label7.Text = dt.Minute.ToString();//30
    Label8.Text = dt.Month.ToString();//11
    Label9.Text = dt.Second.ToString();//28
    Label10.Text = dt.Ticks.ToString();//632667942284412864
    Label11.Text = dt.TimeOfDay.ToString();//13:30:28.4412864
    Label1.Text = dt.ToString();//2005-11-5 13:47:04
    Label2.Text = dt.AddYears(1).ToString();//2006-11-5 13:47:04
    Label3.Text = dt.AddDays(1.1).ToString();//2005-11-6 16:11:04
    Label4.Text = dt.AddHours(1.1).ToString();//2005-11-5 14:53:04
    Label5.Text = dt.AddMilliseconds(1.1).ToString();//2005-11-5 13:47:04
    Label6.Text = dt.AddMonths(1).ToString();//2005-12-5 13:47:04
    Label7.Text = dt.AddSeconds(1.1).ToString();//2005-11-5 13:47:05
    Label8.Text = dt.AddMinutes(1.1).ToString();//2005-11-5 13:48:10
    Label9.Text = dt.AddTicks(1000).ToString();//2005-11-5 13:47:04
    Label10.Text = dt.CompareTo(dt).ToString();//0
    Label11.Text = dt.Add(?).ToString();//问号为一个时间段
    Label1.Text = dt.Equals("2005-11-6 16:11:04").ToString();//False
    Label2.Text = dt.Equals(dt).ToString();//True
    Label3.Text = dt.GetHashCode().ToString();//1474088234
    Label4.Text = dt.GetType().ToString();//System.DateTime
    Label5.Text = dt.GetTypeCode().ToString();//DateTime
    Label1.Text = dt.GetDateTimeFormats('s')[0].ToString();//2005-11-05T14:06:25
    Label2.Text = dt.GetDateTimeFormats('t')[0].ToString();//14:06
    Label3.Text = dt.GetDateTimeFormats('y')[0].ToString();//2005年11月
    Label4.Text = dt.GetDateTimeFormats('D')[0].ToString();//2005年11月5日
    Label5.Text = dt.GetDateTimeFormats('D')[1].ToString();//2005 11 05
    Label6.Text = dt.GetDateTimeFormats('D')[2].ToString();//星期六 2005 11 05
    Label7.Text = dt.GetDateTimeFormats('D')[3].ToString();//星期六 2005年11月5日
    Label8.Text = dt.GetDateTimeFormats('M')[0].ToString();//11月5日
    Label9.Text = dt.GetDateTimeFormats('f')[0].ToString();//2005年11月5日 14:06
    Label10.Text = dt.GetDateTimeFormats('g')[0].ToString();//2005-11-5 14:06
    Label11.Text = dt.GetDateTimeFormats('r')[0].ToString();//Sat, 05 Nov 2005 14:06:25 GMT
    Label1.Text = string.Format("{0:d}",dt);//2005-11-5
    Label2.Text = string.Format("{0:D}",dt);//2005年11月5日
    Label3.Text = string.Format("{0:f}",dt);//2005年11月5日 14:23
    Label4.Text = string.Format("{0:F}",dt);//2005年11月5日 14:23:23
    Label5.Text = string.Format("{0:g}",dt);//2005-11-5 14:23
    Label6.Text = string.Format("{0:G}",dt);//2005-11-5 14:23:23
    Label7.Text = string.Format("{0:M}",dt);//11月5日
    Label8.Text = string.Format("{0:R}",dt);//Sat, 05 Nov 2005 14:23:23 GMT
    Label9.Text = string.Format("{0:s}",dt);//2005-11-05T14:23:23
    Label10.Text   string.Format("{0:t}",dt);//14:23
    Label11.Text = string.Format("{0:T}",dt);//14:23:23
    Label12.Text = string.Format("{0:u}",dt);//2005-11-05 14:23:23Z
    Label13.Text = string.Format("{0:U}",dt);//2005年11月5日 6:23:23
    Label14.Text = string.Format("{0:Y}",dt);//2005年11月
    Label15.Text = string.Format("{0}",dt);//2005-11-5 14:23:23
    Label16.Text = string.Format("{0:yyyyMMddHHmmssffff}",dt);  
  • 相关阅读:
    NetSuite Batch Process Status
    NetSuite generated bank files and the Bank Reconciliation process
    Global Search file content in Gitlab repositories, search across repositories, search across all files
    FedEx Package Rate Integration with NetSuite direct integrate by WebServices
    git Merge branches
    git tag and NetSuite deployment tracking
    API 读写cookie的方法
    C# 生成缩略图
    解决jquery操作checkbox全选全不选无法勾选问题
    JS读取写入删除Cookie方法
  • 原文地址:https://www.cnblogs.com/YYkun/p/7064990.html
Copyright © 2011-2022 走看看