首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用DateTimeFormat.DayNames获取一周中所有日期的整数值?c#

DateTimeFormat.DayNames 是 .NET Framework 中的一个属性,它返回一个字符串数组,包含当前区域设置所定义的一周中每一天的名称。然而,这个属性并不直接提供一周中每一天对应的整数值(通常是星期一到星期日对应的 1 到 7)。要获取这些整数值,你可以使用 DateTimeFormatInfo 类。

以下是一个示例代码,展示如何获取一周中所有日期的整数值:

代码语言:txt
复制
using System;
using System.Globalization;

class Program
{
    static void Main()
    {
        // 获取当前区域设置的 DateTimeFormatInfo 对象
        DateTimeFormatInfo dfi = CultureInfo.CurrentCulture.DateTimeFormat;

        // 获取一周中每一天的名称
        string[] dayNames = dfi.DayNames;

        // 创建一个数组来存储一周中每一天对应的整数值
        int[] dayValues = new int[dayNames.Length];

        // 遍历 dayNames 数组,并为每一天分配一个整数值
        for (int i = 0; i < dayNames.Length; i++)
        {
            // 注意:这里假设星期一是每周的第一天,对应整数值 1
            // 如果你的区域设置中星期日是每周的第一天,你可能需要调整这个逻辑
            dayValues[i] = i + 1;
        }

        // 输出一周中每一天对应的整数值
        for (int i = 0; i < dayValues.Length; i++)
        {
            Console.WriteLine($"{dayNames[i]}: {dayValues[i]}");
        }
    }
}

注意:

  1. 上述代码假设星期一是每周的第一天,并对应整数值 1。如果你的区域设置中星期日是每周的第一天,你可能需要调整代码逻辑来适应这种情况。
  2. DateTimeFormat.DayNamesDateTimeFormatInfo.DayNames 返回的数组顺序可能因区域设置而异。上述代码假设数组的顺序是从星期一到星期日,但实际情况可能不同。你可以根据需要调整代码来适应不同的区域设置。

如果你想要一个更通用的解决方案,可以考虑使用 Enum.GetValues 方法结合 DayOfWeek 枚举来获取一周中每一天的整数值:

代码语言:txt
复制
using System;

class Program
{
    static void Main()
    {
        // 获取 DayOfWeek 枚举的所有值
        DayOfWeek[] days = (DayOfWeek[])Enum.GetValues(typeof(DayOfWeek));

        // 创建一个数组来存储一周中每一天对应的整数值
        int[] dayValues = new int[days.Length];

        // 遍历 days 数组,并为每一天分配一个整数值
        for (int i = 0; i < days.Length; i++)
        {
            dayValues[i] = (int)days[i];
        }

        // 输出一周中每一天对应的整数值
        for (int i = 0; i < dayValues.Length; i++)
        {
            Console.WriteLine($"{days[i]}: {dayValues[i]}");
        }
    }
}

这个方法不依赖于区域设置,而是直接使用 DayOfWeek 枚举,因此更加通用和可靠。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

07 常用函数

函数类型 聚合函数 字符串函数 数值函数 日期函数 转换函数 1....数值相关 数值处理函数仅处理数值数据。这些函数一般主要用于代数、三角或几何运算,因此没有串或日期—时间处理函数的使用那么频繁。但在主要DBMS的函数中,数值函数是最一致最统一的函数。...format 规定日期/时间的输出格式 格式 描述 %a 缩写星期名 %b 缩写月名 %c 月,数值 %D 带有英文前缀的月中的天 %d 月的天,数值(00-31) %e 月的天,数值(0-31) %f...(hh:mm:ss) %U 周 (00-53) 星期日是一周的第一天 %u 周 (00-53) 星期一是一周的第一天 %V 周 (01-53) 星期日是一周的第一天,与 %X 使用 %v 周 (01-...53) 星期一是一周的第一天,与 %x 使用 %W 星期名 %w 周的天 (0=星期日, 6=星期六) %X 年,其中的星期日是周的第一天,4 位,与 %V 使用 %x 年,其中的星期一是周的第一天,4

9410

数据分析常用的Excel函数合集(下)

COUNTIFS函数:统计一组给定条件所指定的单元格数 SUM函数:计算单元格区域中所有数值的和 SUMIF函数:对满足条件的单元格求和 SUMPRODUCT函数:返回相应的数组或区域乘积的和 STDEV...SUM 计算单元格区域中所有数值的和 ? 8. SUMIF 功能:求满足条件的单元格和 语法:=SUMIF(单元格1: 单元格2 ,条件,单元格3: 单元格4) ? 9....AVERAGE(算术平均值) COUNT(数值个数) COUNTA(非空单元格数量) MAX(最大值) MIN(最小值) PRODUCT(括号内所有数据的乘积) STDEV(估算样本的标准偏差) STDEVP...WEEKDAY函数:返回对应于某个日期的一周中的第几天。 Datedif函数:计算两个日期之间相隔的天数、月数或年数。 1....WEEKDAY 功能:返回对应于某个日期的一周中的第几天。默认情况下, 1(星期日)到 7(星期六)范围内的整数。 语法:=Weekday(指定时间,参数),参数设为2,则星期一为1,星期日为7 ?

3K20
  • SQL常用函数

    SQL常用函数 函数介绍 函数分类 字符串函数 数值函数 日期和时间函数 流程函数 其他常用函数 函数介绍 事先提供好的一些功能可以直接使用 函数可以用在SELECT语句及其子句 也可以用在UPDATE...、去掉字符串左右的空格 REPEAT(str,x) 返回str重复x次的结果 REPEAT("abc",3) abcabcabc REPLACE(str,a,b) 用字符串b替换字符串str中所有出现的字符串...) bcd 数值函数 ABS(x) 返回X的绝对值 ABS(-45) 45 CEIL(x) 小数不为零部分上取整,即向上取最近的整数 CEIL(2.3) 3 FLOOR(x) 小数部分下取整,即向下取最近的整数...(885225600) 1998-01-20 00:00:00 WEEK(DATE) 返回当前是一年中的第几周 WEEK("2019-7-26") 29 YEAR(DATE) 返回所给日期是那一年...(00-53) 星期一是一周的第一天 %V 周 (01-53) 星期日是一周的第一天,与 %X 使用 %v 周 (01-53) 星期一是一周的第一天,与 %x 使用 %W 星期名 %w 周的天 (0=星期日

    60540

    Excel常用函数

    =SUMIF(D2:D11,D4,C2:C11) 求和所有性别中性别为女的年龄 3、求平均值函数AVERAGE() 获取平均值 1、指定数值求平均值 =AVERAGE(10,20) 2、指定单元格求平均值...1、对指定单元格进行取整,忽略小数位 =INT(E3) 11、求字符串长度函数LEN() 返回文本字符串中的字符个数 【注意】数字,字符,汉字都属于一个字符,包括小数点 1、对指定单元格获取长度 =LEN...(2010) 2010 17、星期函数WEEKDAY() 返回对应于某个日期的一周中的第几天。...用法 数据 2008-2-14 公式 描述(结果) 结果 =WEEKDAY(A2) 使用数字 1(星期日)到 7(星期六)表示的一周中的第几天 (5) 5 =WEEKDAY(A2, 2) 使用数字...1(星期一)到 7(星期日)表示的一周中的第几天 (4) 4 =WEEKDAY(A2, 3) 使用数字 0(星期一)到 6(星期日)表示的一周中的第几天 (3) 3 18、日期函数 DATE() 返回表示特定日期的连续序列号

    3.6K40

    Mysql 常用函数(1)- 常用函数汇总

    数值型函数 字符串型函数 日期时间函数 聚合函数 流程控制函数 数值型函数 某些简单的数学函数就不详细说了哦!...,即向上取整 FLOOR 向下取整,返回值转化为一个BIGINT RAND 生成一个0~1之间的随机数,传入整数参数是,用来产生重复序列 ROUND 对所传参数进行四舍五入 SIGN 返回参数的符号...DATE 获取指定日期时间的日期部分 TIME 获取指定日期时间的时间部分 MONTH 获取指定日期中的月份 MONTHNAME 获取指定日期中的月份英文名称 DAYNAME 获取指定曰期对应的星期几的英文名称...YEAR 获取年份,返回值范围是 1970〜2069 DAYOFWEEK 获取指定日期对应的一周的索引位置值 WEEK 获取指定日期是一年中的第几周,返回值的范围是否为 0〜52 或 1〜53 DAYOFYEAR...获取指定曰期是一年中的第几天,返回值范围是1~366 DAYOFMONTH 和 DAY 两个函数作用相同,获取指定日期是一个月中是第几天,返回值范围是1~31 TIME_TO_SEC 将时间参数转换为秒数

    1.5K20

    基于Linux整形时间的常用计算思路

    上一次分享了Linux时间时区详解与常用时间函数,相信大家对Linux常见时间函数的使用也有了一定的了解,在工作中遇到类似获取时间等需求的时候也一定能很好的处理。...本文基于Linux整形时间给出一些简化的的常用计算思路,试图从另外的角度去加强读者对时间处理的理解,希望对您有所帮助。 概述 在后台server 的开发中,经常需要基于日期、时间的比较、计算。...虽然有系统函数localtime()可以很好的获取日期相关的详细信息,但由于其获取的信息足够详细,以至于在某些特定的简单功能上,使用localtime()实际上是有多余的开销。...基于这两个公式我们还可以扩展更多的相关于天的日期计算,而很容易看出,公式所使用的计算仅仅为整数数值运算而已。 对于星期的计算,我们可以仿造上面的思路。...一种方式是将T1定义成宏,在国际化时对不同时区的版本,使用不同的T1数值。

    1.9K100

    玩转Mysql系列 - 第10篇:常用的几十个函数详解

    也可以对pos使用负值,在这种情况下,子字符串的开头是字符串末尾的pos字符,而不是开头。在这个函数的任何形式中pos可以使用负值。...对于所有形式的substring(),从中提取子串的字符串中第一个字符的位置被认为是1。...dayofweek 获取指定日期是一周中是第几天,返回值范围是1~7,1=周日 week 获取指定日期是一年中的第几周,返回值的范围是否为 0〜52 或 1〜53 dayofyear 获取指定曰期是一年中的第几天...,返回参数 1 减去参数 2 的值 date_format 格式化指定的日期,根据参数返回指定格式的值 weekday 获取指定日期在一周内的对应的工作日索引 curdate 和 current_date...DAYOFWEEK(d) 函数返回 d 对应的一周中的索引(位置)。

    3.1K21

    JDK1.8快速入门

    在javase8中,lambda表达式的形式基本好C#中一致,Stream和LINQ类似,Future和Task类似,可以这样说,javase8大体达到了C#编码的便捷程度哈!...", "Beijing"); filter,map,flatmap方法 分别对应C#中Linq的where,select和selectMany   Optional tempTT...在1.8以前,主要使用joda-time库来处理一些比较复杂的时间日期操作,现在有官方的api了。...可以使用基于类型的注解 private @NonNull List names = new ArrayList(); 方法参数反射,可以反射获取参数的名称 Java7 使用Path...向绝对值最大的方向舍入,只要舍弃位非0即进位。 2、ROUND_DOWN:向下取整(丢掉小数)。趋向零方向舍入。向绝对值最小的方向输入,所有的位都要舍弃,不存在进位情况。

    1.1K90

    MySQL 常用函数汇总

    unix 时间戳转换为时间格式,与 unix_timestamp 互为反函数 month 获取指定日期中的月份 monthname 获取指定日期中的月份英文名称 dayname 获取指定曰期对应的星期几的英文名称...dayofweek 获取指定日期对应的一周的索引位置值 week 获取指定日期是一年中的第几周,返回值的范围是否为 0 〜 52 或 1 〜 53 dayofyear 获取指定曰期是一年中的第几天,返回值范围是...两个函数功能相同,都是向日期减去指定的时间间隔 addtime 时间加法运算,在原始时间上添加指定的时间 subtime 时间减法运算,在原始时间上减去指定的时间 datediff 获取两个日期之间间隔...,返回参数 1 减去参数 2 的值 date_format 格式化指定的日期,根据参数返回指定格式的值 weekday 获取指定日期在一周内的对应的工作日索引 1.3.1 curdate:系统日期 #...curdate() 与 current_date() 函数的作用相同,将当前日期按照 YYYY-MM-DD 或 YYYYMMDD 格式的值返回 # 具体格式根据函数用在字符串或数字语境中而定,日期可以直接加减

    2.3K21

    C# 基础知识系列- 13 常见类库介绍(二)日期时间类

    前言 上一篇内容介绍了Console类和Math类,这篇内容着重介绍一下C#中时间日期的处理方式。 上一篇勘误:上一篇中关于静态类没有构造函数,这一表述有误。...正确的说法是C#中静态类不包含常规构造函数,但可以添加一个静态构造函数。...中关于日期运算的基本内容。...不过在使用TimeSpan中需要注意的地方是,TimeSpan计算返回的值可正可负,正值表示时间间隔的头在前尾在后,负值表示头在后尾在前;TimeSpan中没有提供TotalMonths这个方法,这是因为每个月具体有多少天不是固定值...使用DateTime.Parse或者Convert.ToDateTime就可以将字符串转换为时间类型。C#并不需要在字符串转日期的时候指定字符串的显示格式,这是因为一个约定优于配置的设计理念。

    2.2K30

    shell awk内置函数-shell基础

    %c 本地日期与时间。 %C 年份中的世纪部分,其值为年份整除100。 %d 十进制日期(01-31) %D 等价于 %m/%d/%y....%U 一年中的第几个星期(第一个星期天作为第一周的开始),00-53 %V 一年中的第几个星期(第一个星期一作为第一周的开始),01-53。...%w 以数字表示的星期(0-6),0表示星期日 。 %W 十进制表示的一年中的第几个星期(第一个星期一作为第一周的开始),00-53。...%U 一年中的第几个星期(第一个星期天作为第一周的开始),00-53 %V 一年中的第几个星期(第一个星期一作为第一周的开始),01-53。...%w 以数字表示的星期(0-6),0表示星期日 。 %W 十进制表示的一年中的第几个星期(第一个星期一作为第一周的开始),00-53。

    2.2K20

    【MySQL】:高效利用MySQL函数实用指南

    本文将深入介绍MySQL中的字符串函数、数值函数、日期函数和流程函数,通过实例演示和详细解释,帮助读者掌握这些函数的使用方法,从而提高数据库操作的效率和灵活性。 一....在做报表这类的业务需求中,我们要展示出学员的分数等级分布。而在数据库中,存储的是学生的分数值,如98/75,如何快速判定分数的等级呢?...其实,上述的这一类的需求呢,我们通过MySQL中的函数都可以很方便的实现 。 MySQL中的函数主要分为以下四类: 字符串函数、数值函数、日期函数、流程函数。 二....数值函数 常见的数值函数如下: 函数 功能 CEIL(x) 向上取整 FLOOR(x) 向下取整 MOD(x,y) 返回x/y的模 RAND() 返回0~1内的随机数 ROUND(x,y) 求参数x的四舍五入的值...通过学习本文,读者可以掌握在实际业务场景中如何灵活运用这些函数,从而更高效地处理数据库中的数据,满足各种业务需求。

    28310

    数据库存储时间你用对了吗?

    ❝本文来源于快手小粉丝咖啡的投稿,全文一起聊了聊,在数据库里如何做存储时间,从 DateTime、Timestamp、数值型时间戳3 个类型,从理论+代码来分析如何做选择。...下面我会先介绍不同类型的特点和区别,也再去了解了不同的大佬、不同公司如何对待这个问题。最后,谈到时间,也额外补充Java中时间的一些问题。...2.2、日期范围和存储空间: 这个类型能保存大范围的值,从1000年到9999年,精度为秒。它把日期和时间封装到格式为YYYYMMDDHHMMSS的整数中,与时区无关。使用8个字节的存储空间。...这个数值是一个绝对数值,即无论的身处地球的任何角落,这个表示时间的时间戳,都是一样的,生成的数值都是一样的,并且没有时区的概念,所以在系统的中时间的传输中,都不需要进行额外的转换了,只有在显示给用户的时候...PS:夏令时:每年从四月中旬第一个星期日的凌晨2时整(北京时间),将时钟拨快一小时,即将表针由2时拨至3时,夏令时开始;到九月中旬第一个星期日的凌晨2时整(北京夏令时),再将时钟拨回一小时,即将表针由2

    2.2K10

    Linux date日期格式及加减运算

    显示时间是个常用的命令,在写shell脚本中也经常会用到与日期相关文件名或时间显示。无论是linux还是windows下都是date命令。...-f, –file=DATEFILE  类似–date参数显示DATEFILE文件中的每行时间 -ITIMESPEC, –iso-8601[=TIMESPEC]  以ISO  8601 格式显示日期/...(Sat Nov 04 12:02:33 EST 1989) %C     世纪(年份除100后去整) [00-99] %d     一个月的第几天(01..31) %D     日期(mm/dd/yy...(00..53) %V     一年的第几周,周一为每周的第一天 (01..53) %w     一周的第几天 (0..6);  0 代表周日 %W    一年的第几周,周一为每周的第一天(00..53...参考推荐: date命令用法详解(日期格式) Java Date 和 Calendar C#日期格式参考小结 如何修改Ubuntu Linux的时间 CentOS 6 时间,时区,设置修改及时间同步

    8.2K40

    MYSQL语句大全

    select a.id as ID,a.title as 标题 from A inner join B on A.id=B.id;#添加as字句 #左连接又叫外连接 left join 返回左表中所有记录和右表中连接字段相等的记录...from A left join (B,C,D) on (B.i1=A.i1 and C.i2=A.i2 and D.i3 = A.i3);#复杂连接 #右连接又叫外连接 right join 返回右表中所有记录和左表中连接字段相等的记录...语法 DATE_FORMAT(date,format)  参数是合法的日期。 规定日期/时间的输出格式。...可以使用的格式有: 格式 描述 %a 缩写星期名 %b 缩写月名 %c 月,数值 %D 带有英文前缀的月中的天 %d 月的天,数值(00-31) %e 月的天,数值(0-31) %f 微秒 %H...:ss) %U 周 (00-53) 星期日是一周的第一天 %u 周 (00-53) 星期一是一周的第一天 %V 周 (01-53) 星期日是一周的第一天,与 %X 使用 %v 周 (01-53) 星期一是一周的第一天

    2.1K11

    MySQL常用函数介绍

    SELECT语句及其条件表达式都可以使用这些函数,函数可以帮助用户更加方便的处理表中的数据,使MySQL数据库的功能更加强大。本篇文章主要为大家介绍几类常用函数的用法。...col) 求和,返回指定列的总和 AVG(col) 求平均值,返回指定列数据的平均值 2.数值型函数 数值型函数主要是对数值型数据进行处理,得到我们想要的结果,常用的几个列举如下,具体使用方法大家可以试试看...时间戳转换为时间格式,与UNIX_TIMESTAMP互为反函数 MONTH 获取指定日期中的月份 MONTHNAME 获取指定日期中的月份英文名称 DAYNAME 获取指定曰期对应的星期几的英文名称...DAYOFWEEK 获取指定日期对应的一周的索引位置值 WEEK 获取指定日期是一年中的第几周,返回值的范围是否为 0〜52 或 1〜53 DAYOFYEAR 获取指定曰期是一年中的第几天...,返回参数 1 减去参数 2 的值 DATE_FORMAT 格式化指定的日期,根据参数返回指定格式的值 WEEKDAY 获取指定日期在一周内的对应的工作日索引 一些示例: # CURDATE()

    1.8K21

    Mysql常用函数

    (x),lcase(x) 字符串查找函数 获取指定位置的子串 字符串去空函数 字符串替换函数: 用于处理数值的函数 绝对值函数:abs(x) 向上取整函数:ceil(x) 向下取整函数:floor(x)...取模函数:mod(x,y) 随机数函数:rand() 四舍五入函数:round(x,y) 数值截取函数:truncate(x,y) 用于处理时间日期的函数 获取当前日期:curdate(),current_date...() 获取当前时间:curtime(),current_time() 获取当前日期时间:now() 从日期中选择出月份数:month(date),monthname(date) 从日期中选择出周数:week...---- 用于处理数值的函数: 绝对值函数:abs(x) 返回x的绝对值 向上取整函数:ceil(x) 返回x的向上取整的整数 向下取整函数:floor(x) 返回x的向下取整的整数 取模函数:mod(...---- 用于处理时间日期的函数: 获取当前日期:curdate(),current_date() 返回格式为: ? 获取当前时间:curtime(),current_time() 返回格式为: ?

    1.8K10
    领券