我们在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文档。