首頁 >後端開發 >C++ >如何從C#中的DateTime對象獲取ISO 8601日期字符串?

如何從C#中的DateTime對象獲取ISO 8601日期字符串?

DDD
DDD原創
2025-01-29 02:41:09178瀏覽

How to Get ISO 8601 Date Strings from DateTime Objects in C#?

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn