C# DateTime 对象生成 ISO 8601 日期字符串
在 C# 中,DateTime
类提供了多种格式化日期和时间值的方法。在处理国际化时,务必考虑 ISO 8601 标准,该标准定义了多种一致的日期和时间格式。
要获得符合 ISO 8601 标准的日期字符串(特定格式为 "yyyy-MM-ddTHH:mm:ssZ"),您可以采用两种方法:
自定义日期时间格式化 (不推荐)
虽然可以使用 ToString
进行自定义格式化,但不推荐这种方法,因为它可能在处理小数秒精度时出现问题。以下代码片段演示了这种方法:
<code class="language-csharp">DateTime.UtcNow.ToString("yyyy-MM-ddTHH\:mm\:ss.fffffffzzz", CultureInfo.InvariantCulture);</code>
往返格式化 (推荐)
更可靠的方法是使用“往返”格式化选项 ("o"):
<code class="language-csharp">DateTime.UtcNow.ToString("o", CultureInfo.InvariantCulture);</code>
这将提供 ISO 8601 格式,并遵循 .NET 框架的约定。生成的字符串通常类似于 "2008-09-22T14:01:54.9571247Z"。
针对特定格式的自定义格式化
如果您特别需要 "yyyy-MM-ddTHH:mm:ssZ" 格式,可以使用:
<code class="language-csharp">DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ", CultureInfo.InvariantCulture);</code>
此方法确保时间部分以尾随 "Z" 进行格式化,以指示 UTC 时间。
以上是如何从C#中的DateTime对象获取ISO 8601日期字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!