我试图简单地获取星期几的 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.DateTime
和 System.DayOfWeek
之间的 ToString()
实现不同所致。
DateTime
类中的ToString
实现以here 结束。 ,它正在测试更多的格式说明符。
在 DayOfWeek
上调用的 ToString
实现位于 Enum
类中,它只检查 few format specifiers。 , 如果不是其中之一,则抛出异常。
关于c# - ToString ("ddd") 不适用于缩写为 3 个字符的 DayofWeek,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33072589/