首页 > 其他分享 >获取指定周的开始时间结束时间

获取指定周的开始时间结束时间

时间:2023-07-01 11:56:50浏览次数:46  
标签:System DayOfWeek int 指定 DateTime 获取 Globalization 时间 year

    /// <summary>
    /// 获取周
    /// </summary>
    /// <param name="year"></param>
    /// <returns></returns>
    static int GetWeekNumber(int year)
    {
        DateTime now = Convert.ToDateTime(year + "-12-31");
        var cal = System.Globalization.CultureInfo.CurrentCulture.Calendar;
        int firstWeek = cal.GetWeekOfYear(now, System.Globalization.CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
        return firstWeek;
    }
    /// <summary>
    /// 周开始时间
    /// </summary>
    /// <param name="year"></param>
    /// <param name="weekNumber"></param>
    /// <returns></returns>
    static DateTime GetFirstDateOfWeek(int year, int weekNumber)
    {
        DateTime jan1 = new DateTime(year, 1, 1);
        int daysOffset = DayOfWeek.Thursday - jan1.DayOfWeek;

        DateTime firstThursday = jan1.AddDays(daysOffset);
        var cal = System.Globalization.CultureInfo.CurrentCulture.Calendar;
        int firstWeek = cal.GetWeekOfYear(firstThursday, System.Globalization.CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);

        var weekNum = weekNumber;
        if (firstWeek <= 1)
        {
            weekNum -= 1;
        }

        DateTime result = firstThursday.AddDays(weekNum * 7);
        return result.AddDays(-3);
    }
    /// <summary>
    /// 周结束时间
    /// </summary>
    /// <param name="year"></param>
    /// <param name="weekNumber"></param>
    /// <returns></returns>
    static DateTime GetLastDateOfWeek(int year, int weekNumber)
    {
        DateTime firstDayOfWeek = GetFirstDateOfWeek(year, weekNumber);
        return firstDayOfWeek.AddDays(6);
    }

标签:System,DayOfWeek,int,指定,DateTime,获取,Globalization,时间,year
From: https://www.cnblogs.com/sylAll/p/17519065.html

相关文章

  • java时间工具类型,格式化时间,最近7天 月初 月末 季度 月度 时间格式化
    常用java时间格式化:packagecom.tz.util;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;/***时间工具类最近7天月初月末季度月度时间格式化等等……**@description时间工具类*@author:tz*@dtate:......
  • 使用火焰图分析.NET的 start-up 期间花费的时间
    本文将告诉你从“dotnetrun”到“helloworld”,如何使用PerfView来分析.NET运行时在启动期间所花费的时间。代码示例在这个示例中,我故意只关注.NET运行时在程序启动(start-up)过程中的操作,以确保运行的用户代码最少,因此只有以下的“HelloWorld”:usingSystem;namespace......
  • confluence时间日期错误问题
    搭建confluence后,进入空间目录,发现其中的日期显示不正确的情况问题截图:  解决方案:重新设定日期格式,修改为“yyyy-MM-ddHH:mm” ......
  • C#获取本地IP地址
    publicstaticboolTryGetLocalEndPoint(outIPEndPointipEndPoint){try{stringlocalIP=string.Empty;using(Socketsocket=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp)){......
  • 拓端tecdat|R语言贝叶斯Metropolis-Hastings Gibbs 吉布斯采样器估计变点指数分布分析
    原文链接:http://tecdat.cn/?p=26578 原文出处:拓端数据部落公众号最近我们被客户要求撰写关于吉布斯采样器的研究报告,包括一些图形和统计输出。指数分布是泊松过程中事件之间时间的概率分布,因此它用于预测到下一个事件的等待时间,例如,您需要在公共汽车站等待的时间,直到下一班车......
  • python获取当前路径包含的文件并根据选择进行查看
    1、获取当前路径文件名。##(3)获取当前路径的文件名。importospath='./'#替换为你的路径dir=os.listdir(path)#dir是目录下的全部文件print("当前目录的全部文件名称为::",dir)fopen=open('file01','a+')#替换为你的路径fordindir:......
  • 时间序列预测-基于LSTM-CNN的人体活动识别
    本文主要利用LSTM和CNN来处理移动传感器产生的数据识别人类活动。传感器数据集数据组成这个项目使用了WISDM(WirelessSensorDataMining)Lab实验室公开的Actitracker的数据集其中数据:测试记录:1,098,207条行为类型:6种走路慢跑上楼梯下楼梯坐站立传感器类......
  • LocalDateTime日期格式化和指定日期的时分秒
    LocalDateTime日期格式化和指定日期的时分秒packagecom.example.core.mydemo.date;importjava.time.LocalDate;importjava.time.LocalDateTime;importjava.time.format.DateTimeFormatter;/***now=2023-06-30*after=2023-07-04*afterTime=2023-07-04T00:00:0......
  • JavaScript aglo 算法 时间复杂度
    https://www.bigocheatsheet.com/https://www.hello-algo.com/chapter_preface/about_the_book/ gpt的回答好的,下面给出这些算法的JavaScript例子,并给出它们的时间复杂度分析:O(1)-常数时间复杂度:javascriptCopyCodefunctionconstantTimeAlgorithm(n){return2+......
  • 为什么Python Selenium获取的Cookie不完整?
    在某些情况下,使用PythonSelenium访问网页并尝试获取Cookie时,可能会发现获取到的Cookie不完整。具体而言,期望获取的Cookie键值对数量与实际获取的数量不符。类似这个uu的问题:目前情况下,PythonSelenium获取的Cookie不完整可能的原因有几个:1.在获取Cookie之前,网页内容可能还未完全加......