码迷,mamicode.com
首页 > 其他好文 > 详细

如何获取ISO8601定义的Work Week

时间:2017-05-02 14:02:12      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:ons   get   stat   函数   ddd   简单   system   cal   div   

工作中遇到一个需求,需要在打印标签的时候打印生产当天的工作周。工作周按照ISO-8601定义的标准计算。找到两种方案。

  1. Excel函数
  2. C#代码
  • Excel函数

非常简单,调用一个Excel自带函数就可以,ISOWEEKNUM

技术分享

 

  • C#函数

代码如下:

using System;
using System.Globalization;

namespace MACAddressMgmtApp.ServiceImplementations
{
    public static class WorkWeekHelper
    {

        public static int GetIso8601WeekOfYear(DateTime dt)
        {
            
            DayOfWeek day = CultureInfo.InvariantCulture.Calendar.GetDayOfWeek(dt);

            if (day >= DayOfWeek.Monday && day <= DayOfWeek.Wednesday)
            {

                dt = dt.AddDays(3);

            }

            return CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(dt, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);

        }

    }

}

 

如何获取ISO8601定义的Work Week

标签:ons   get   stat   函数   ddd   简单   system   cal   div   

原文地址:http://www.cnblogs.com/QiuTianBaBa/p/6736814.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!