如何将DateTime.Now转换为这种格式?

时间:2015-06-22 12:06:12

标签: c# .net datetime

我无法理解如何将DateTime.Now转换为某种格式,例如2015-06-04T14:13:00

此处T代表什么以及如何将其转换为此格式?

1 个答案:

答案 0 :(得分:4)

真的冒险回答但是......

您可以使用单引号转义T字符,并使用:作为TimeSeparator的文化(例如:InvariantCulture);

DateTime.Now.ToString("yyyy-MM-dd'T'HH:mm:ss", CultureInfo.InvariantCulture);

作为更好的方法,您可以使用The "s" standard format specifier中代表的SortableDateTimePattern property作为"yyyy'-'MM'-'dd'T'HH':'mm':'ss"自定义字符串ISO 8601

DateTime.Now.ToString("s"); // 2015-06-22T15:17:27

究竟是什么T

来自https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations

  

单个时间点可以通过连接完整表示   日期表达式,字母T作为分隔符,以及有效时间   表达。例如"2007-04-05T14:30"

     

如果需要时区指示符,则它遵循合并日期   和时间。例如"2007-04-05T14:30Z""2007-04-05T12:30-02:00"

     

可以使用基本格式或扩展格式,但可以使用日期和时间   必须使用相同的格式。日期表达式可以是日历,周,   或序数,并且必须使用完整的表示。时间   表达可能会降低准确性。允许省略'T'   通过相互协议的性格。

  

通过信息交换中的合作伙伴的共同协议,   在没有风险的应用程序中可以省略字符[T]   将日期和时间表示与其他人定义混淆   在本国际标准中。