我们在C#中有这个常量:
System.Globalization.DateTimeFormatInfo.InvariantInfo.SortableDateTimePattern
它具有以下值:
"yyyy'-'MM'-'dd'T'HH':'mm':'ss"
我确实在ParseExact
函数中使用它,然后也yyyy-MM-ddTHH:mm:ss
可以正常工作。
我无法弄清楚单引号的用途。
我们在C#中有这个常量:
System.Globalization.DateTimeFormatInfo.InvariantInfo.SortableDateTimePattern
它具有以下值:
"yyyy'-'MM'-'dd'T'HH':'mm':'ss"
我确实在ParseExact
函数中使用它,然后也yyyy-MM-ddTHH:mm:ss
可以正常工作。
我无法弄清楚单引号的用途。
Answers:
知道这与Windows GetDateFormat函数使用的格式相同是很有用的。您使用撇号来表示要插入到结果字符串中的一些文字。
有关字符串格式代码的更多文档,请参见:
在您的字符串中表明它确实要添加连字符,冒号和T字符:
yyyy
'-'
MM'-'
dd'T'
HH':'
mm':'
ss
通常,您不希望用字面的连字符(-
)或冒号(:
)甚至斜杠(/
)构造日期/时间。因为对于不使用斜杠和冒号构造日期/时间的文化,这是错误的:
如果要指出,您将要做什么:
是使用特殊的:
并构造如下格式:
dd / yyyy / MM ss:HH:mm
我不知道需要什么业务才能将日期显示为:
但是这样,本地化器将插入区域性的正确日期和时间分隔符。
而如果你从字面上要求/
,-
或:
:
'/'
yyyy '/'
MM ss ':'
HH ':'
mm您将得到:
而不是:
GetDateFormat
。也许类似,但例如的含义yyyyy
不同。鉴于这个问题引起了人们的极大关注,并且与C#/有关,我建议更正此声明并链接到.NET文档。