c# - ToString ("ddd") 不适用于缩写为 3 个字符的 DayofWeek

标签 c# dayofweek

我试图简单地获取星期几的 3 个字母的首字母缩写词。

Monday = MON
Tuesday = TUE
and so on.

我试过了,但出现错误。

string wsDoW = DateTime.Today.DayOfWeek.ToString("ddd");

对我来说,唯一的解决方法是……

string wsDoW = DateTime.Today.DayOfWeek.ToString().ToUpper().Substring(0,3);

错误是...

Format String can be only "G", "g", "X", "x", "F", "f", "D" or "d".

这是怎么回事?

最佳答案

删除 DayOfWeek 部分和您的 format specifier会工作得很好。

string wsDoW = DateTime.Today.ToString("ddd");

这是由于 System.DateTimeSystem.DayOfWeek 之间的 ToString() 实现不同所致。

DateTime 类中的ToString 实现以here 结束。 ,它正在测试更多的格式说明符。

DayOfWeek 上调用的 ToString 实现位于 Enum 类中,它只检查 few format specifiers。 , 如果不是其中之一,则抛出异常。

关于c# - ToString ("ddd") 不适用于缩写为 3 个字符的 DayofWeek,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33072589/

相关文章:

c# - 应用调整

javascript - 无法在 'appendChild' : parameter 1 is not of type 'Node' error on append tr to a table 上执行 'Node'

c# - 构建 TreeView 问题

c - 坂本智彦的算法是如何工作的?需要详细解释

c# - 无法将 Microsoft Office Interop 程序集添加到项目中

c# - 如何在 C# 中导出注册表

c# - 如何将位串转换为 boolean 数组

c# - 等价于 C# 中 VB6 的 WeekDay 函数

mysql - 返回一周中每一天的数据(每行 7 条记录)- MySQL

java - 确定一周中特定一天的日期